test cases for universal windows platform (uwp) and windows...

44
Test Cases for Universal Windows Platform (UWP) and Windows 8.1 Applications Contents 1. Launch-related Test Cases .................................................................................................................................. 4 1.1 Low spec devices ............................................................................................................................................. 4 1.2 Launch on all required device families ....................................................................................................... 4 1.3 Multi-regional launch ..................................................................................................................................... 5 1.4 Offline launch .................................................................................................................................................. 5 1.5 Launch time ..................................................................................................................................................... 5 1.6 Additional applications .................................................................................................................................. 6 2. Log In Test Cases .................................................................................................................................................. 6 2.1 Offline log in .................................................................................................................................................... 6 2.2 Invalid credentials........................................................................................................................................... 7 2.3 All log in methods are functional ................................................................................................................ 7 2.4 Switching away after logging in .................................................................................................................. 7 2.5 Account creation ............................................................................................................................................ 8 2.6 Account switching .......................................................................................................................................... 8 3. Application Use Test Cases ................................................................................................................................. 9 3.1 App Switching.................................................................................................................................................. 9 3.2 Software Input Pad implementation .......................................................................................................... 9 3.3 Touch targets ................................................................................................................................................. 10 3.4 Visual feedback ............................................................................................................................................. 10 3.5 Gestures ...........................................................................................................................................................11 3.6 Secondary tiles................................................................................................................................................11 3.7 Command bar with contextual commands ............................................................................................. 12

Upload: others

Post on 27-Jul-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

Test Cases for Universal Windows

Platform (UWP) and Windows 8.1

Applications

Contents 1. Launch-related Test Cases .................................................................................................................................. 4

1.1 Low spec devices ............................................................................................................................................. 4

1.2 Launch on all required device families ....................................................................................................... 4

1.3 Multi-regional launch ..................................................................................................................................... 5

1.4 Offline launch .................................................................................................................................................. 5

1.5 Launch time ..................................................................................................................................................... 5

1.6 Additional applications .................................................................................................................................. 6

2. Log In Test Cases .................................................................................................................................................. 6

2.1 Offline log in .................................................................................................................................................... 6

2.2 Invalid credentials........................................................................................................................................... 7

2.3 All log in methods are functional ................................................................................................................ 7

2.4 Switching away after logging in .................................................................................................................. 7

2.5 Account creation ............................................................................................................................................ 8

2.6 Account switching .......................................................................................................................................... 8

3. Application Use Test Cases ................................................................................................................................. 9

3.1 App Switching.................................................................................................................................................. 9

3.2 Software Input Pad implementation .......................................................................................................... 9

3.3 Touch targets ................................................................................................................................................. 10

3.4 Visual feedback ............................................................................................................................................. 10

3.5 Gestures ...........................................................................................................................................................11

3.6 Secondary tiles ................................................................................................................................................11

3.7 Command bar with contextual commands ............................................................................................. 12

Page 2: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

3.8 Application is stable ...................................................................................................................................... 12

3.9 Application performance is responsive .................................................................................................... 13

3.10 Toast notifications are actionable............................................................................................................. 13

3.11 Offline mid-use scenarios ........................................................................................................................... 14

3.12 Saved status preservation .......................................................................................................................... 15

3.13 Portrait and landscape mode scenarios.................................................................................................. 15

3.14 Core scenarios completed within the application ................................................................................. 16

3.15 In-App purchases ........................................................................................................................................ 16

3.16 Geofencing ................................................................................................................................................... 17

3.17 Cross-Platform adaptive layout ................................................................................................................ 17

3.18 Application is feature complete ................................................................................................................ 17

3.19 App Resume ................................................................................................................................................. 18

3.20 Readability .................................................................................................................................................... 19

3.21 Placeholder text and imagery ................................................................................................................... 19

3.22 Application specific hardware ................................................................................................................. 20

3.23 Cortana ........................................................................................................................................................ 20

3.24 Resuming after idling ................................................................................................................................. 21

3.25 In-app settings ........................................................................................................................................... 22

3.26 Audio quality ............................................................................................................................................... 22

3.27 Multi-regional use ...................................................................................................................................... 23

4. Mobile-Only Test Cases .................................................................................................................................... 23

4.1 Back button for mobile ................................................................................................................................ 23

4.2 Continuum for mobile ................................................................................................................................. 24

5. Desktop-Only Test Cases .................................................................................................................................. 25

5.1 Display resolutions and scaling .................................................................................................................. 25

5.2 Application resumes from a suspended state ........................................................................................ 25

5.3 Back button for desktop ............................................................................................................................. 26

5.4 Desktop and tablet mode switching ........................................................................................................ 26

5.5 Multiple input methods ............................................................................................................................... 27

5.6 Forward and backward navigation ........................................................................................................... 27

5.7 Windowed and split screen views ............................................................................................................. 28

Page 3: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

5.8 Prompted updates ....................................................................................................................................... 29

6. Social Networking Integration Test Cases ..................................................................................................... 29

6.1 Shared content .............................................................................................................................................. 29

6.2 Share targets ................................................................................................................................................. 30

7. Game Specific Test Cases .................................................................................................................................. 30

7.1 Game leaderboard ....................................................................................................................................... 30

7.2 Game achievements and scores ................................................................................................................ 31

7.3 Game multiplayer support .......................................................................................................................... 31

7.4 Roaming Game Saves ................................................................................................................................. 32

7.5 Game mods ................................................................................................................................................... 32

7.6 Save slots ....................................................................................................................................................... 32

8. Media Specific Test Cases ................................................................................................................................. 33

8.1 Background audio playback ....................................................................................................................... 33

8.2 Background audio controls ........................................................................................................................ 33

8.3 Video pauses playback when the application is in the background .................................................. 34

8.4 Saved streaming media position .............................................................................................................. 34

9. Feature Verification ............................................................................................................................................ 35

10. Competitive Parity Test Cases ........................................................................................................................ 35

10.1 Feature parity – Competitive platforms .................................................................................................. 35

10.2 Feature parity - Website ........................................................................................................................... 36

11. Surface Hub-Only Test Cases .......................................................................................................................... 36

11.1 First run experience ..................................................................................................................................... 36

11.2 Multiple input methods .............................................................................................................................. 37

11.3 Forward and backward navigation .......................................................................................................... 37

11.4 Split screen views ........................................................................................................................................ 38

11.5 Cloud storage or removable media support ......................................................................................... 38

11.6 Controls accessible without occluding content (presentation applications) .................................... 39

11.7 Controls accesible by multiple users (collaborative applications) ...................................................... 39

11.8 Large screen ergonomics .......................................................................................................................... 39

12. Xbox Device Family UWP App Test Cases ................................................................................................... 40

12.1 Mouse mode disabled ............................................................................................................................... 40

Page 4: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

12.2 TV screen UI ................................................................................................................................................. 41

12.3 Gamepad and remote control mappings ............................................................................................... 41

12.4 Collapsed navigation pane ....................................................................................................................... 42

12.5 All controls should be accessible via d-pad .......................................................................................... 42

12.6 Snapped applications ................................................................................................................................ 43

12.7 Back button for Xbox ................................................................................................................................. 44

12.8 Cloud storage or removable media support ........................................................................................ 44

1. Launch-related Test Cases

1.1 Low spec devices

The application should install and function properly on low spec devices.

Expected result:

The application should function properly on low spec devices.

Note: A “Low spec” phone is defined as a 512MB Windows Phone 8.1 device, ex: Lumia 520 and a 1GB

Windows 10 Mobile device, ex: Lumia 535. A “Low spec” tablet is defined as a 2GB Windows 10

Desktop device with Intel integrated graphics, ex: Dell Venue 8 Pro.

If the application performs poorly with the hardware configuration above, be sure to disclose the

hardware requirements in the ‘System Requirements’ section of the ‘App properties’ page when

submitting the application and completing its metadata in Windows Dev Center. Be sure to also alert

users in the first line of the Store description, ex: “Is your PC Rise of the Tomb Raider ready? View

'System Requirements' below to find out!”

1.2 Launch on all required device families

The application should install and launch properly on all device families the application is supporting.

Steps to Reproduce:

1. Attempt to install and launch the application on all required device families.

Expected result:

Page 5: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

The application should install on all required device families.

The application should launch without error.

1.3 Multi-regional launch

The application should launch properly on devices where the local username contains Unicode

characters.

Steps to Reproduce:

1. Launch the application on a device where the user local folder path has Unicode characters,

ex: c:\users\캔디\.

Expected result:

The application launches properly on devices where the local username contains Unicode characters.

1.4 Offline launch

The application should be stable and not crash or close unexpectedly if the device is offline. When the

application is offline, the application should warn the user for any requested action that cannot be

completed.

Steps to Reproduce:

1. Disconnect from the network and wait 10 seconds.

2. Launch the application.

3. Perform an action that will cause a connection to be attempted.

Expected result:

The application will detect that the network is not available and alert the user.

Application should not crash and provide a relevant error message to user. Application should

not display the exception stack to the user.

The application can also implement an offline (cached) mode without alerting the user.

1.5 Launch time

The application should launch in a reasonable amount of time, and should display a loading or

progress indicator if the application takes a while to load.

Steps to Reproduce:

1. Launch the application.

2. Record the start-up time.

Expected result:

Page 6: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

The application displays a loading or progress indicator if the application takes a while to load,

and the content loads in a reasonable amount of time.

1.6 Additional applications

The application must not deliver or install non-integrated third-party owned or branded applications

unless they are delivered as in-app products.

Steps to Reproduce:

1. Install the application.

2. Ensure that Step 1 installed only one listing to the Start menu.

Expected result:

Multiple applications should not be bundled in one installation.

In-app settings and options should be accessible from the main application rather than from

additional listings in the Start menu.

More information:

For more information see Windows Store Policies.

2. Log In Test Cases

The following test cases apply only to applications that support log in.

2.1 Offline log in

When the application is offline and the user attempts to log in, the application should warn the user

of the offline status.

Steps to Reproduce:

1. Disconnect from the network and wait 10 seconds.

2. Launch the application.

3. Attempt to log in with valid credentials.

4. Verify that an appropriate error message appears.

5. Reconnect to the network and wait 10 seconds.

6. Return to the application.

7. Log in with valid credentials.

Expected result:

Page 7: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

When attempting to log in without a network connection, an appropriate error message

should appear warning the user of the offline state.

When the network connection has been resumed, log in should work appropriately.

2.2 Invalid credentials

The application should warn the user appropriately when invalid credentials are entered.

Steps to Reproduce:

1. Launch the application.

2. Attempt to log in with invalid credentials.

3. Verify that an appropriate error message appears.

4. Log in with valid credentials, changing the casing in the username field.

Expected result:

When attempting to log in with invalid credentials, an appropriate error message should

appear warning the user that the credentials are invalid.

The username field should not be case-sensitive.

When correct credentials are entered after a failed attempt, log in should work appropriately.

2.3 All log in methods are functional

All available log in options should be fully functional and appropriately implemented.

Steps to Reproduce:

1. Launch the application.

2. Log in using all available options with valid credentials.

Expected result:

Application logs in when valid credentials are entered.

Social networking log in and/or sign up is processed using the services’ login page(s) and not

using application pages for this purpose.

2.4 Switching away after logging in

The application should load content successfully after switching away during the loading process.

Steps to Reproduce:

1. Launch the application.

2. Log in with valid credentials.

3. While the application is loading, switch away from the application.

4. Wait one second and return to the application.

Page 8: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

Expected result:

Content should load successfully after returning to the application.

2.5 Account creation

The creation of accounts within the application (when available) should function properly.

Steps to Reproduce:

1. Launch the application.

2. Create an account if the option is available, entering valid information when prompted.

3. Exit the application.

4. Attempt to log in with the newly created account.

Expected result:

Accounts can be successfully created within the application when the option is available.

If an email verification is required, the application should state this and the verification email

should arrive within an hour of creating the account.

Username, email, and password requirements are made clear to the user.

2.6 Account switching

Users should be able to log into various accounts properly when the option is available.

Steps to Reproduce:

1. Launch the application and log into account #1.

2. Navigate through the application, saving information to the account whenever possible.

3. Log out and exit the application.

4. Launch the application and log into account #2.

5. Navigate through the application.

Expected result:

Logging into a second account should function properly after logging out of a first account.

Data from a first account should not appear when logged into a second account.

Page 9: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

3. Application Use Test Cases

3.1 App Switching

The application should display and function properly when switching away and returning, as well as

re-issue network requests when application is reactivated.

Steps to Reproduce:

1. Launch application.

2. Navigate through the application.

3. Switch away from the application (using Windows key + D if necessary).

4. Select the Start button.

5. Return to the application.

6. During loading (when loading indicator is present), switch away from the application.

7. Wait one second and return to the application.

Expected result:

Functionality completes successfully and data is downloaded without error or exception.

The application does not display in the background when deactivated and displays as

expected after switching away and returning.

More information:

For more information on Fast App Switching in Windows Phone applications, see Get Ready for Fast

Application Switching in Windows Phone and App activation and deactivation for Windows Phone 8

For Windows applications, see Managing app lifecycle so your apps feel "always alive"

3.2 Software Input Pad implementation

The Software Input Pad (SIP) should be contextually-aware of the types of input allowed per input

field and it needs to be dismissed when input field is not selected on an application or when the

application is deactivated.

Steps to Reproduce:

1. Switch the device to Tablet mode and ensure a keyboard is not connected.

2. Launch the application.

3. Find an input textbox that allows alphanumeric characters.

4. Verify when this control has focus (is tapped with touch), the full keyboard and symbols are

displayed.

5. Find an input textbox that allows only numbers.

6. Verify when the control has focus (is tapped with touch), only the keypad SIP is displayed.

Page 10: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

7. Move focus out of the input textbox (tap outside of the textbox with touch).

Expected result:

The SIP is dismissed when input controls lose focus.

Users can see what they are typing while they are typing it.

3.3 Touch targets

Touch targets should not be smaller than 7 mm or 26 pixels square.

Steps to Reproduce:

1. Launch the application.

2. Navigate through the application.

3. Identify actionable UI elements on the application.

Expected result:

Actionable UI elements in the application should be clearly visible and easily touchable by finger

without interfering with other neighboring touchable UI elements.

More information:

For more information on the Windows touch language, see Touch interaction design

3.4 Visual feedback

Visual feedback helps users recognize whether their interactions with your application are detected,

interpreted, and handled as intended.

Steps to Reproduce:

1. Launch the application.

2. Explore and navigate the application. Tap on each actionable UI element.

Expected result:

There is visual feedback for actionable or interactive UI elements.

There is no visual feedback for non-actionable or non-interactive UI elements.

Note: Acceptable visual feedback can be a slight change in color and/or movement of the

button when selected by touch or mouse (not when hovering over with a mouse.)

More information:

For more information on visual feedback, see Guidelines for visual feedback

Page 11: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

Touch interaction guidance: Touch interactions for Windows

Responding to user interactions: Responding to user interaction

3.5 Gestures

Primary actions should be enabled by directly interacting with content. For example, tap to open,

swipe to select, pinch to zoom, and drag to pan/paginate. If a panorama or pivot control contains

other controls which use the same left / right flick gestures, this may result in a poor user experience

due to gesture overlaps. UI elements, controls or other parts of an application should not interfere

with Windows edge gesture.

Steps to Reproduce:

1. Launch the application.

2. Explore and navigate the pages and functionality of application with touch only.

3. Inspect the application’s panorama/pivot control for scrollable map, horizontal scroll viewer,

toggle switches, sliders, or other controls that use left / right flick (or pan) gestures.

4. Navigate to each page and test the edge gestures for commanding surfaces (Title bar, Task

bar, Action center, Task View). (For Windows 8 apps: app bar, navigation bar, charms bar,

recent app.)

Expected results:

The application should fully support touch input. For example, the user should be able to

navigate or interact with commands using touch input only.

Touch gestures should only be used for actions that match the Windows touch language.

Pivot and/or panorama controls do not have controls with competing gestures and can be

used reliably.

If the hub, panorama or pivot reacts by scrolling then the child control should not trigger.

Any UI elements, controls, or other parts of the application should not interfere with Windows

edge gestures.

More Information:

Gesture interaction guidance: Gestures, manipulations, and interactions

3.6 Secondary tiles

Secondary tiles should enable users to pin context specific content on the Start screen.

Steps to Reproduce:

Page 12: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

1. Launch the application.

2. Explore the application and identify functionality (if any) where the user has the option to ‘Pin

to Start’.

3. Select ‘Pin to Start’ to create a secondary tile on the Start screen.

4. Launch the application by tapping the primary tile of the application on the Start screen or

tapping the application name from the application list page.

5. Navigate to a second or third level page in the application.

6. Tap the Start button to return to the Start screen.

7. On the Start screen tap the secondary tile of the application.

8. Exit the application.

9. Launch the application from the secondary tile.

Expected result:

Launching the application from the secondary tile results in displaying content related to the

secondary tile.

On pressing the Back button (if applicable), user exits the application or navigates to the main

page.

More information:

For more information on tiles refer below link: Secondary tiles overview (Windows Runtime apps)

3.7 Command bar with contextual commands

Command bar commands need to be functional as well as predictable and organized so users can

easily find them.

Steps to Reproduce:

1. Launch the application.

2. Explore and navigate the pages and functionality of application.

3. Select items with contextual commands.

Expected result:

All command bar buttons are functional, relevant, and contextual.

3.8 Application is stable

The application should be stable and not crash or hang. The application should not have functional

bugs that prevent completion of core scenarios.

Page 13: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

Steps to Reproduce:

1. Launch the application.

2. Explore and navigate the pages and functionality of application.

Expected result:

Application should not crash or hang.

3.9 Application performance is responsive

The application must appear responsive to the user at all times. Visual feedback is needed to indicate

the application is not frozen. Load times may be longer on slow connections resulting in the

application appearing to be frozen if no visual feedback is provided.

Steps to Reproduce:

1. Launch the application.

2. Explore and navigate the pages and functionality of application.

3. Invoke functionality that requires time to load. E.g. network request to load data.

4. For games, check the framerate using Fraps (www.fraps.com).

Expected result:

The application displays a loading or progress indicator for tasks that may take time to load,

and the content loads in a reasonable amount of time.

When the content has fully loaded, the loading indicator should no longer be present.

Application should be responsive and fluid.

Transition animations should be smooth.

The application should not display a blank screen, blank tiles, or empty white rectangles.

Games should have a framerate above 25 fps.

More information:

Guidelines for progress controls: Guidelines for progress controls

For Centennial applications: Desktop App Converter Preview

3.10 Toast notifications are actionable

Notifications should be used for time-sensitive or personally relevant notifications. Notifications are an

invite back into the application when it is not in the foreground. Tapping the notification should bring

the application to the foreground and in context to the notification.

Steps to Reproduce:

Page 14: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

1. Launch the application.

2. Invoke functionality to create a toast or notification. E.g. push notification or scheduled

reminder.

3. Switch away from the application and/or close the application.

4. Wait for the notification.

5. Select the notification.

Expected result:

When selecting the toast or notification, the application should be brought to the foreground

in the context of the toast or notification.

Toast notifications should not be displayed when the application is in the foreground.

More information:

For more information see Guidelines for toast notifications and Guidelines for toasts and badges

3.11 Offline mid-use scenarios

When the system is in an offline scenario (no cell coverage, no WiFi, airplane mode, etc.), the

application should alert the user appropriately.

Steps to Reproduce:

1. Launch the application.

2. Explore and navigate the pages and functionality of application.

3. Disconnect from the network and wait 10 seconds.

4. Return to the application.

5. Perform an action that will cause a connection to be attempted.

6. Verify that the application notifies the user of the offline state.

7. Reconnect to the network and wait 10 seconds.

8. Return to the application.

Expected result:

The application will detect that the network is not available and alert the user.

Application should not crash and provide a relevant error message to user. Application should

not display the exception stack to the user.

The application can also implement an offline (cached) mode without alerting the user.

When resuming to the application in an online state after being previously using in an offline

state, the application should detect that the connection has been restored and work properly.

More information:

Page 15: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

For more information, see Offline Sync for Mobile Services and Build offline apps with Azure Mobile

Services

3.12 Saved status preservation

Application progress and saved states should be maintained after navigating away, exiting, and

synching on another device.

Steps to Reproduce:

1. Launch the application and log in if available.

2. Explore and navigate the pages and functionality of application, saving whenever possible (for

games, clear 2~3 levels/stages/checkpoints).

3. Exit the application.

4. Launch the application (if applicable, launch on a second device and log into the same

account as in step 1).

Expected result:

The application should retain saved states.

The application should retain saved information across devices when logged into the same

account.

3.13 Portrait and landscape mode scenarios

The application should adapt properly to portrait or landscape view if supported.

Steps to Reproduce:

1. Rotate the device to portrait or landscape view.

2. Launch the application.

3. If the application supports both portrait and landscape view (layout changes), navigate to

each page in the application. Rotate the device between all supported orientations at each

page.

Expected result:

When launched, the application remains in the same orientation as the device (if the

application supports multiple orientations).

All application pages render properly and adapt to the views supported. Ex: no text

truncation, all buttons are accessible, etc.

Applications should not display a logo or error message when the view is changed.

Applications should not launch in portrait mode on a Desktop device unless the application is

launched in portrait mode.

Page 16: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

More information:

For Centennial applications, information on detecting orientation states and changes in Win32 apps

can be found here: Desktop Rotation Sample Whitepaper

3.14 Core scenarios completed within the application

All core application scenarios are completed without errors.

Steps to Reproduce:

1. Launch the application.

2. Navigate through the entire application.

Expected result:

All core scenarios are accessible from within the application, not from an external web

browser.

Note: It is acceptable for a privacy policy or a login page that redirects back to the application

to open in a web browser.

Note: It is acceptable for the application to contain an in-app web browser.

3.15 In-App purchases

In-App (Add On) purchases should display the corresponding Store UI.

Steps to Reproduce:

1. Launch the application.

2. Locate an in-app purchase.

3. Cancel the purchase.

Expected result:

The item for sale in the application should correspond to the one found in the Store UI.

The Store UI should take no more than 5 seconds to display.

Cancelling a purchase should not charge the user or reward them with the item.

After June 29, 2015, third party solutions for selling digital content consumed in the

application are no longer permitted. Microsoft IAP must be used to sell digital items that are

consumed or used within the application. The use of an external web browser or in-app

webview is not acceptable.

Page 17: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

3.16 Geofencing

When geofenced sections of the application are accessed outside of the targeted area, the

application should display an appropriate error message.

Steps to Reproduce:

1. Launch the application.

2. Locate or create the application scenario dependent on geofencing.

3. Perform an action that invokes the geofenced feature.

Expected result:

There should be an indication that the application is being used outside of the required region.

3.17 Cross-Platform adaptive layout

The application layout should adapt and display properly on all supported devices.

Steps to Reproduce:

1. Launch the application on all supported devices.

2. Navigate through the application and inspect the layout.

Expected result:

All application pages render properly and adapt across all supported devices. Ex: no text truncation,

all application buttons are accessible, no large blank areas, etc.

More information:

For more information see Introduction to Universal Windows Platform (UWP) applications for

designers , TargetDeviceFamily (Windows 10 Insider Preview) , UWP Development 1: Building an

Adaptive UI and Web Apps Beyond the Browser: Cross-Platform Meets Cross Device

For information on how to turn off scaling for UWP on Xbox see How to turn off scaling

3.18 Application is feature complete

The controls within the application should invoke the expected functionality. The application should

not display messages indicating features are ‘coming soon’ or do nothing in response to control

actions.

Steps to Reproduce:

1. Launch the application.

Page 18: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

2. Navigate through the application, interacting with buttons and tiles throughout.

Expected result:

The controls within the application should work as expected and should not present “coming soon”

messages.

3.19 App Resume

App Resume allows the previous suspended instance of the application to be resumed when user re-

launches the application from the Start screen.

Steps to Reproduce:

1. Launch the application by tapping the primary tile of the application on the Start screen or

tapping the application name from the application list page.

2. Navigate to a second or third level page in the application.

3. If testing a Desktop application in Desktop mode, navigate away from the application.

4. Tap the Start button to return to the Start screen.

5. On Start screen, tap the primary Tile again to resume the application.

Expected result:

The application resumes to the same page as in step 2 and pressing the back button takes the user

through the correct sequence of pages.

Or

The application resumes at the main page (without the splash screen and loading indicator) and

pressing the Back key exits the application. Pressing the Back key should NOT navigate to another

page.

More information:

For more information see App lifecycle - Windows app development

For Centennial applications:

To restrict your Win32 application to one instance and to bring it to the foreground if the application is

already running, consider the following C++ code:

When your application initializes, create a mutex. If it already exists, find the existing application and

bring it to the foreground. If the application has a fixed title for its main window, it is easy to find with

FindWindow.

Page 19: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

m_singleInstanceMutex = CreateMutex(NULL, TRUE, L""Some unique string

for your app"");

if (m_singleInstanceMutex == NULL || GetLastError() ==

ERROR_ALREADY_EXISTS) {

HWND existingApp = FindWindow(0, L""Your app's window title"");

if (existingApp) SetForegroundWindow(existingApp);

return FALSE; // Exit the app. For MFC, return false from

InitInstance.

}

3.20 Readability

All content in the application should be easily readable and adapt to a mobile or desktop device set

to both light and dark themes.

Steps to Reproduce:

1. If testing on a mobile or desktop device, set the device to the dark theme.

2. Launch the application.

3. Navigate through the application, if an in-app light/dark theme is available switch between

the two.

4. If testing on a mobile or desktop device, set the device to the light theme.

5. Navigate through the application.

Expected result:

All content in the application displays properly (ex: no light text against white backgrounds, etc.)

3.21 Placeholder text and imagery

The application should not display placeholder text or imagery.

Steps to Reproduce:

1. Locate the application in the device’s list of applications.

2. Pin the application to the Start screen.

3. Adjust the tile size.

4. Launch the application.

5. Navigate through the application.

Expected result:

Page 20: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

• Tiles should be unique to the application and not display the default ⊠, a Unity logo, or be

blank.

• Splash screen should reflect the brand of the application. The splash screen should not

display the default icon ⊠ or be blank.

• The application should not display developer or placeholder text.

• Messaging and/or imagery in the application should not be from a different version of the

application (ex: Mobile imagery or tutorial instructions on a Desktop application,

iOS/Android imagery or text, etc.)

3.22 Application specific hardware

The application should function properly with all supported hardware.

Steps to Reproduce:

1. Connect supported hardware (ex: Bluetooth earphones, fitness band, etc.).

2. Launch the application.

3. Navigate through the application, interacting with supported hardware as needed.

4. Disconnect or turn off the hardware.

Expected result:

• The application should connect with supported hardware and interact properly, registering

any changes made with the hardware in the application.

• When the hardware is disconnected, the application should not crash and should alert the

user that the hardware has been disconnected.

• The hardware device connection should not be intermittent and stay reliably connected to

the host device.

• In-application instructions on how to sync/connect the device to the application should be

provided if the connection is not done automatically.

3.23 Cortana

Actions performed using supported Cortana commands should execute properly.

Steps to Reproduce:

1. Launch the application (this will ensure the commands are populated).

2. Select the Cortana button in the lower left corner of the Windows taskbar (on non-Desktop

devices, launch the Cortana application).

3. Perform the command, “What can I say?”.

4. Scroll down through the list of applications and locate the application under test.

Page 21: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

5. Select the application under test and perform each Cortana command listed with voice

(example: say “News, show me the latest stories”), ensuring that the application is running

before each command is spoken.

6. Close the application.

7. Perform each Cortana command from step 5 with voice, ensuring that the application is not

running when the commands are spoken (show all running apps by displaying the task

manager on Desktop or the running apps list by holding down the back key on Mobile).

8. For media applications on Xbox, locate and begin playback of a video or an audio track.

9. Perform the standard media control commands (see: “What can I say? – Media Controls”).

Expected result:

Spoken commands should perform the action that is implied by the listed commands.

Cortana should not perform a Bing search or simply launch the application.

Commands should function when the application is running and closed.

More information:

• Cortana Voice Commands: http://aka.ms/cortanadocs

• Speech interactions in your app: http://aka.ms/speechdocs

• App Linking: http://dev.bing.com/

• SystemMediaTransportControls: SystemMediaTransportControls class

3.24 Resuming after idling

Applications should support the application lifecycle and resume successfully after the screen is turned

off.

Steps to Reproduce:

1. Launch the application.

2. Navigate to a page other than the default landing page for the application. Change the state

of the page. E.g. fill in a text box.

3. Let the device go idle until the screen automatically turns off.

4. Turn the screen back on and resume use of the application.

Expected result:

• The application should be in the same state as when the application was suspended.

• Interaction with the application should resume as normal.

More information:

For more information see Application lifecycle overview

Page 22: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

3.25 In-app settings

Implementation of in-app settings is not required. If implemented, in-app settings should work as

expected.

Steps to Reproduce:

1. Launch the application.

2. Navigate to the settings section.

3. Change various graphics, audio, and language settings and save.

4. Navigate through the application.

5. Exit the application.

6. Launch the application.

7. Navigate through the application.

Expected result:

• Changed settings should register properly.

• Settings should be retained after exiting and relaunching the application.

3.26 Audio quality

Audio effects and in-app music should play without distortion.

Steps to Reproduce:

1. Launch the application.

2. Navigate through the application.

3. If the ability to import local music files is offered, import a variety of file types (ex: mp3, wma,

aac) and play them in the application.

Expected result:

Audio effects and in-app music should play without distortion (ex: no crackling or low quality audio,

music plays when expected, etc.).

Page 23: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

3.27 Multi-regional use

The application should function properly on devices where the local username contains Unicode

characters.

Steps to Reproduce:

1. Launch the application on a device where the user local folder path has Unicode characters,

ex: c:\users\캔디\.

2. Navigate through the application.

3. Explore and navigate the pages and functionality of application, saving whenever possible.

4. If available, export and/or import local files to/from the application.

Expected result:

• The application functions properly on devices where the local username contains Unicode

characters.

• When available, saving, importing and exporting work as expected.

More information:

For Centennial applications see Unicode and Character Sets and Unicode in C and C++

4. Mobile-Only Test Cases

The following test cases apply only to Windows Mobile applications.

4.1 Back button for mobile

Applications should properly navigate back through pages when using the back key.

Steps to Reproduce:

1. Launch the application.

2. Navigate to a second or third page within the application.

3. Press the back key until reaching the Start menu.

Expected result:

Page 24: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

The application should not bring up the Start screen or exit the application unless back key is

pressed while on the main menu.

The application should navigate back through the previously selected pages in the correct

order and eventually arrive at the Start menu.

More information:

Guidelines for back buttons

4.2 Continuum for mobile

Applications should display properly on external monitors and support keyboard and mouse when

using the continuum dock.

Steps to Reproduce:

1. Launch the application.

2. Navigate to a second or third page within the application.

3. Dock the device.

4. Select the application from the application list on the external monitor and ensure that the

application resumes where it was in step 2.

5. Navigate through the application and check the functionality.

6. Undock the device.

7. Select the application from the application list and ensure that the application resumes where

it was in step 5.

8. Navigate through the application and check the functionality.

9. Exit the application by holding down the back key and selecting the x in the upper right

corner and re-dock the device.

10. Launch the application from the external monitor while docked.

11. Navigate through the application and check the functionality.

Expected result:

The application displays properly on larger external screens, ex: no truncation, stretched out

images, or large empty spaces.

The application functions properly with keyboard and mouse, including any login screens.

More information:

For more information on Continuum, see Optimizing Windows Apps for Continuum and Optimizing

apps for Continuum for phone

Page 25: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

5. Desktop-Only Test Cases

The following test cases apply only to Windows Client applications.

5.1 Display resolutions and scaling

The application should support a variety of display resolutions.

Steps to Reproduce:

1. Set display resolution to 1280x800 and the resolution scaling to 125% (if prompted to sign out

for the changes to take effect then do so).

2. Launch the application.

3. Inspect the layout and application functionality with both touch and a mouse.

4. Set display resolution to 1920x1080 and the resolution scaling to 150%.

5. Inspect the layout and application functionality with both touch and a mouse.

6. Exit the application.

7. Reboot the device.

8. Launch the application.

9. Inspect the layout and application functionality with both touch and a mouse.

10. Set display resolution to 1280x800 and the resolution scaling to 125%.

11. Inspect the layout and application functionality with both touch and a mouse.

Expected result:

All application pages render properly and adapt at various resolutions Ex: no text truncation,

all command and app bar buttons are accessible, etc.

The application displays properly and mouse and touch input is functional (not offset) at 125-

150% display scaling.

5.2 Application resumes from a suspended state

Applications should support the application lifecycle and resume successfully from a suspended state.

Steps to Reproduce:

1. Launch the application.

Page 26: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

2. Navigate to a page other than the default landing page for the application. Change the state

of the page. E.g. fill in a text box.

3. Switch to the desktop.

4. Open Task Manager (enable View | Status values | Show suspended state) and verify

application is suspended.

5. Switch back to the application.

Expected result:

Application should be in the same state as when the application was suspended.

More information:

For more information see Application lifecycle overview

5.3 Back button for desktop

Windows 10 applications should properly navigate back through pages when using the Windows 10

system back button.

Steps to Reproduce:

1. Set the device to Tablet mode.

2. Launch the application.

3. Navigate to the second or third page within the application.

4. Select the system back button located on the taskbar until reaching the Start menu.

Expected result:

The application should not bring up the Start menu unless it is a Windows 8.x application or if

the system back button is pressed while on the main menu.

The application should navigate back through the previously selected pages in the correct

order and eventually arrive at the Start menu.

More information:

Guidelines for back buttons

5.4 Desktop and tablet mode switching

Applications should seamlessly support switching between Desktop and Tablet modes.

Page 27: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

Steps to Reproduce:

1. Set the device to Desktop mode.

2. Launch the application.

3. Navigate through the application and check the functionality.

4. Switch to Tablet mode.

5. Switch back to the application.

6. Navigate through the application and check the functionality.

7. Switch to Desktop mode.

8. Switch back to the application.

9. Navigate through the application and check the functionality

Expected result:

The application should not crash when switching between desktop and tablet mode.

The application should adapt to the change in screen format and handle the differing

functionality (Software Input Pad, split view, etc.)

5.5 Multiple input methods

The application should properly handle multiple input methods.

Steps to Reproduce:

1. Launch the application.

2. Navigate through the application using a mouse. Checking boxes, right clicking on items, and

dragging if possible.

3. Navigate through the application using touch (and Xbox controller and Pen if applicable).

Attempt to perform all of the same functionality as the mouse (ex: right-clicking highlighted

text displays an additional menu).

Expected result:

Application fully supports navigation and selection using a mouse and touch.

Listbox items should not change state if there are no actions associated with marking or

‘ticking’ the item.

More information:

For more information on Touch: Gestures, manipulations, and interactions Keyboard: Responding to

keyboard interactions Mouse: Responding to mouse interactions

5.6 Forward and backward navigation

There should be UI that clearly indicates how to backward navigate within the application.

Page 28: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

Steps to Reproduce:

1. Launch the application in Desktop mode.

2. Navigate through the application.

3. Attempt to return to a previous page.

Expected result:

Applications should be easy to navigate (ex: in-app back buttons or menus on every page).

5.7 Windowed and split screen views

The application should support a variety of screen sizes and split view(s).

Steps to Reproduce:

1. Set display resolution to minimum recommended resolution of 800x600.

2. Launch the application in Desktop mode.

3. Select the window button in the title bar to resize the application screen.

4. On each page in the application, adjust the horizontal and vertical size of the application.

5. Inspect the layout and application functionality.

6. Exit the application.

7. Set display resolution to 1280x800.

8. Switch the device to Tablet mode.

9. Launch the application.

10. Split the screen by swiping down from the top of the screen.

11. On each page in the application, inspect the layout and application functionality.

Expected result:

All application pages render properly and adapt at minimum resolution and split and resized

view(s). Ex: no text truncation, all command and app bar buttons are accessible, etc.

Consumer non-game applications should not display a logo or error message (ex: "this app

does not support split screen view") in split screen view.

All non-game applications should support windowed views and not force the user to full

screen view.

When snapping an application, the currently viewable position and state of the application

should still be visible when the application is in split screen view and full screen view.

Navigation between pages is still functional when in split screen view.

More information:

For more information see: Defining layouts and views and Guidelines for snapped and fill views

Page 29: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

5.8 Prompted updates

If the application prompts the user to update to the latest version of the application, the link to the

update should work properly.

Steps to Reproduce:

1. Launch the application, noting the version number.

2. If prompted to update to the latest version of the application, select “Yes” or “OK”.

3. Install the update and compare the version number to the version from Step 1.

Expected result:

If the application prompts the user to update to the latest version of the application, the link

to the update should direct users to the latest UWP version of the application.

Users should not be prompted to update unless a newer version of the application is

available.

6. Social Networking Integration Test Cases

The following test case applies only to applications that have Social Network Service integration.

6.1 Shared content

Sharing should function properly when available.

Steps to Reproduce:

1. Launch the application.

2. Navigate through application where social networking or sharing tied features are provided

(also check the “Share” option located in the command bar or Share Charm if applicable.)

3. Verify that actions taken in the application are properly reflected on the social network or

target application.

Expected result:

Page 30: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

The contents and status provided by the social network or target application function properly.

6.2 Share targets

Applications that are a share target should be able to have content shared to them from another

application.

Steps to Reproduce:

1. Launch the application.

2. Launch another application that is a share source.

3. Share to the application under test.

4. Verify that the actions taken in the application are properly reflected on the selected share

target.

Expected result:

The application in test appears as a share target when appropriate content is selected in

another application, ex.: a news article to be shared to the application in test Facebook.

The content shared using another application is properly shared to the application, ex.: no

references to a link that does not appear in the post, no cut off text, etc.

7. Game Specific Test Cases

Game applications may have special user scenarios where additional attention or different

interpretation of requirement is needed. The following test cases ensures applications meet general

quality bars commonly expected from game applications.

7.1 Game leaderboard

Implementation of a leaderboard is not required. If a leaderboard is implemented, ensure the

leaderboard is updated for single and multiplayer scenarios.

Steps to Reproduce:

1. Launch the application.

2. Play the game long enough to post to the leaderboard for both single and/or multiplayer

sessions if offered on the application.

3. Look at all the leaderboards in the game.

Expected result:

Page 31: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

With an active connection to the game’s backend service, the application should post to the

leaderboard showing both the gamer info such as gamer name and the associated score that

is the same as the one from the game session played.

Without an active connection to the game’s backend service, the application should not show

stability issues when not posting to a leaderboard and should inform users about the

connection issue to refresh leaderboard when users access leaderboards.

The application should not require a code to access leaderboards.

7.2 Game achievements and scores

Implementation of achievements and score are not required. If implemented, posted achievements

and scores should be recorded correctly.

Steps to Reproduce:

1. Launch the application.

2. Play the game and earn as many achievements and high scores as possible.

Expected result:

The achievements and high scores are posted on the application and the application’s online

service accurately.

The achievements and high scores are earned while the device has no network connection

are saved accurately on the application and the application’s online service when connection

becomes available.

The application should not require a code to access achievements.

7.3 Game multiplayer support

Implementation of multiplayer support is not required. If implemented, multiplayer game functionality

should gracefully handle any player leaving the game.

Steps to Reproduce:

1. Launch the application.

2. Select multiplayer game mode and start the game playing.

Expected result:

The game is played in a multiplayer mode with valid user.

The application gracefully handles the case where other user(s) playing the game left the

multiplayer game session.

The application gracefully handles the case where the user lost network connection during

multiplayer game session.

The application should not require a code to start a multiplayer game.

Page 32: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

7.4 Roaming Game Saves

UWP games that can be used across multiple device families should support roaming game saves.

Steps to Reproduce:

1. Launch the application on the first device family (ex: desktop).

2. Complete a level and/or earn an achievement.

3. Launch the application on the second device family (ex: mobile), ensuring that this device is

logged into the same Microsoft account as the device in step 1.

4. Complete another level and/or earn an achievement.

5. Launch the application on the first device family (ex: desktop).

Expected result:

The game should retain achievements and level completions across multiple device families.

7.5 Game mods

Implementation of mod support is not required. If implemented, it should be clear to users where to

place mods and mod functionality should load properly from this location.

Steps to Reproduce:

1. Launch the application.

2. Navigate through the application and check the Store Product Description Page for any

reference to mod support and the location mods are loaded from.

3. Place at least one mod into the folder from step 2.

4. Exit and re-launch the application.

5. Play the game.

Expected result:

The application loads mods successfully when placed into the appropriate location.

7.6 Save slots

Implementation of save slots is not required. If implemented, additional save slots should both save

and load properly.

Steps to Reproduce:

1. Launch the application.

2. Play the game and save to the first save slot.

3. Continue playing and save to the second save slot.

4. Load the saved game from the first save slot.

5. Play the game and verify that the save loaded correctly.

Page 33: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

6. Continue playing and save to the first save slot (overwriting the previous data).

7. Exit the application.

8. Launch the application.

9. Load the saved game from the first save slot.

10. Play the game and verify that the save loaded correctly.

11. Load the saved game from the second save slot.

12. Play the game and verify that the save loaded correctly.

Expected result:

The application saves and loads successfully to and from multiple save slots.

8. Media Specific Test Cases

The following test cases only apply to applications that support background audio or play video.

8.1 Background audio playback

Media applications that play audio (music, radio, podcasts, etc.) should continue audio playback when

the application is not in the foreground.

Steps to Reproduce:

1. Launch the application.

2. Start audio playback.

3. Switch away from the application.

Expected result:

Audio continues to play after switching away from the application.

8.2 Background audio controls

Media applications that play audio (music, radio, podcasts, etc.) should support the system transport

control when the application is not in the foreground.

Steps to Reproduce:

1. Launch the application.

2. Start playback.

3. Switch away from the application.

4. Use hardware hot keys for volume to activate the system transport control (on Xbox, Double

tap the Xbox button to bring up the Guide.)

5. Switch tracks or pause using the system transport control.

Page 34: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

Expected result:

Audio playback should be controlled using the system transport control.

8.3 Video pauses playback when the application is in the background

Media applications that display video should pause playback when the application is not in the

foreground.

Steps to Reproduce:

1. Launch the application.

2. Start video playback.

3. Switch away from the application.

4. Switch back to the application.

Expected result:

Video playback should be paused when switching away from the application.

More information:

For more information, see Application lifecycle (Windows Runtime apps) [Activated and suspending

events]

8.4 Saved streaming media position

Streaming video positions for television programs and movies and audio positions for podcasts

should be maintained after navigating away, exiting, and synching on another device.

Steps to Reproduce:

1. Launch the application and log in if available.

2. Begin streaming playback of a television program, movie or podcast and let run for several

minutes.

3. Exit the application.

4. Launch the application (if log in is available, launch on a second device and log in).

5. Play the video or podcast from Step 2.

Expected result:

The application should resume playback of streaming television programs, movies, and

podcasts from the last viewed or listened to position.

The application should retain position points across devices when logged into the same

account.

Page 35: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

9. Feature Verification

10. Competitive Parity Test Cases

10.1 Feature parity – Competitive platforms

The application should have feature parity with competitive platforms.

Steps to Reproduce:

1. Launch application on Android and iOS devices (if applicable) or the Win32 version (for

Centennial applications).

2. Check the application for feature gaps when compared to Android or iOS, or the Win32

version (for Centennial applications).

3. For Centennial applications, if the Win32 version offers the ability to set the application as the

default application for opening associated file types (ex: music files, documents), confirm that

this is offered in the converted version and that it works properly.

Features in competitive versions not available in Windows version:

Expected result:

For native UWP applications: Non-OS specific features that are found in the Android or iOS

versions of the application are also found in the Windows version.

For Centennial applications: Features that are found in the Win32 version of the application

are also found in the Centennial version (including options made available during installation),

including the ability to set the application as the default program for opening associated file

types.

Page 36: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

10.2 Feature parity - Website

The application should have feature parity with its respective website.

Steps to Reproduce:

1. Launch application on a Windows device and open the website the application is based on.

2. Check the application on Windows Phone for feature gaps when compared to the website.

Features in the web version not available in Windows version:

Expected result:

Features that are found on the website are also found on the Windows application.

11. Surface Hub-Only Test Cases

The following test cases apply only to Surface Hub applications.

11.1 First run experience

Some applications show a tutorial or walkthrough on first run. Developers need to ensure their first

run experience accounts for the fact that Surface Hubs can be used by many different users, and

application data is cleared at the end of every session.

Steps to Reproduce:

1. Launch the application.

2. Run through the first run experience if it exists.

3. Tap "I'm done" to end the session.

4. Launch the application again.

Expected result:

If no tutorial or walkthrough is implemented the application should be intuitive and easy to

use for first-time users

If the application supports sign in, provide a per-user first run experience.

Page 37: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

If the application does not support sign in, provide an optional first run experience (e.g. a

nonintrusive pop-up that can be skipped).

11.2 Multiple input methods

The application should properly handle multiple input methods. Pen support is recommended for

productivity applications for ease of use and to encourage collaboration on Surface Hub.

Steps to Reproduce:

1. Launch the application.

2. Navigate through the application using a mouse. Checking boxes, right clicking on items, and

dragging if possible.

3. Navigate through the application using touch. Attempt to perform all of the same

functionality as the mouse (ex: right-clicking highlighted text displays an additional menu).

4. Try annotating on the application canvas using one or more pens.

5. Locate text input fields and type using both the SIP and an external keyboard

Expected result:

Application fully supports navigation and selection using a mouse and touch.

Listbox items should not change state if there are no actions associated with marking or

‘ticking’ the item.

If the application supports content creation, commenting, or markup, pen should be

supported.

The SIP should pop up near where the user has tapped.

External keyboards should be supported wherever text input is available.

More information:

For more information on Touch: Gestures, manipulations, and interactions Keyboard: Responding to

keyboard interactions Mouse: Responding to mouse interactions

11.3 Forward and backward navigation

There should be UI that clearly indicates how to backward navigate within the application.

Steps to Reproduce:

1. Launch the application.

2. Navigate through the application.

3. Attempt to return to a previous page.

Page 38: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

Expected result:

Applications should be easy to navigate (ex: in-app back buttons or menus on every page).

11.4 Split screen views

The application should support split screen view(s).

Steps to Reproduce:

1. Launch the application.

2. Launch another application. Both applications should be displayed side by side.

3. On each page in the application in test, inspect the layout and application functionality while

resizing the application by adjusting the divider bar in the middle of the screen.

Expected result:

All application pages render properly and adapt to split screen view(s). Ex: no text truncation,

all command and app bar buttons are accessible, etc.

Consumer non-game applications should not display a logo or error message (ex: "this app

does not support split screen view") in split screen view.

When snapping an application, the currently viewable position and state of the application

should still be visible when the application is in split screen view and full screen view.

Navigation between pages is still functional when in split screen view.

11.5 Cloud storage or removable media support

For security reasons, Surface Hub clears all application and user data at the end of every session.

Users should be able to easily get content that they have created off the device into cloud storage or

removable media.

Steps to Reproduce:

1. Launch the application.

2. Create content.

3. Attempt to save content to the cloud or to removable media (i.e. USB drives) from within the

application.

Expected result:

If the application supports creating content, it should provide ways for users to:

• Save their content to the cloud from within the application;

• Save their content to removable media (i.e. USB drives) from within the application; or

• Save their content to a location under C:\Users\SurfaceHub that is accessible via the File

Explorer app (i.e. in the current user's Documents, Downloads, Music, Pictures, or Videos folder). If this

Page 39: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

option is the default then the application should present messaging to users reminding them to save

their content to an external drive.

11.6 Controls accessible without occluding content (presentation applications)

For applications that specialize in presentation, controls should be placed in a location that does not

require presenters to cross in front of the display.

Steps to Reproduce:

1. Launch the application.

2. Create or open content for presentation

3. Stand to either side of the Surface Hub, as though presenting content.

4. Interact with the controls on either side of the Surface Hub.

Expected result:

Controls to change slides, etc. can be accessed without having to cross in front of the display.

11.7 Controls accesible by multiple users (collaborative applications)

Applications that specialize in collaboration (e.g. a digital whiteboard) are likely to be used by multiple

users at the same time. Developers should consider how people need to move around the screen to

interact with the application while other users are present, and locate controls as appropriate.

Steps to Reproduce:

1. Launch the application.

2. With at least one other person present, explore the pages and functionality.

Expected result:

Controls should be placed in mutually convenient locations (e.g. along the bottom of the screen) or

contextually pop up on screen when needed.

11.8 Large screen ergonomics

The application should consider the ergonomics of using an app on a large screen (55" or 84").

Steps to Reproduce:

Page 40: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

1. Launch the application.

2. Inspect the layout and application functionality.

Expected result:

The application should consider users' "cone of awareness", i.e. limitations to radial legibility.

At 18" from the screen, the average person's radial legibility is 18". If an action triggers a

change to another control outside this cone of awareness, it may impede users' ability to

complete scenarios.

Intensive and repeated tasks should be kept near the user's point of interaction. Consider user

height (e.g. the average height of an American woman is 5'5"). For example, avoid placing

common controls at the top of the screen.

The size of content should neither be too large to be used up close, nor too small to be

viewed from a distance - 1.3m-4m away for huddle spaces, and 1.3-6m away for large

meeting rooms.

Gestures should not require gross physical movements, e.g. changing slides should only

require a flick of the finger, not a tennis swing.

12. Xbox Device Family UWP App Test Cases

See this Build 2016 talk for a great overview of best practices when building UWP applications for

Xbox: Building Great Universal Windows Platform (UWP) Apps for Xbox

See also: UWP features that aren't yet supported on Xbox

12.1 Mouse mode disabled

A UWP application running on Xbox has mouse mode enabled by default for both XAML and Hosted

Web Apps. All applications that have not opted out will receive a mouse pointer, similar to the one in

the Xbox Edge Browser. This should be disabled in code.

Steps to Reproduce:

1. Launch the application.

2. Notice if the mouse pointer is displayed in the middle of the UI.

Expected result:

Navigation using d-pad navigation should be the default. This is enabled by disabling ‘mouse mode’.

More information:

For more information on disabling mouse mode see: How to disable mouse mode

Page 41: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

12.2 TV screen UI

The application should conform to television screens by using TV safe colors, drawing into the TV-

Safe area, not including essential controls in the TV-Safe area, and accounting for users sitting across

the room during use.

Steps to Reproduce:

1. Launch the application.

2. Navigate through the application and inspect the layout from 10 feet away.

Expected result:

The application uses all of the available screen and extra outer borders are not displayed.

The currently focused element is clearly visible to the user at all times when seated roughly 10

feet away from the television screen.

The application does not use high intensity colors that make the application display banded

effects or appear washed out.

Application controls are not included in the TV-Safe area

More information:

For more information see: How to draw UI to the edge of the screen, Designing for Xbox and TV and

Adapt Your App for Xbox One and TV

12.3 Gamepad and remote control mappings

Media applications should support standard play, stop, FF, RW, etc. button mappings in order to meet

user expectations.

Steps to Reproduce:

1. Launch the application.

2. If vertical or horizontal scrolling is supported, verify that the gamepad triggers and bumpers

function as expected.

3. Start video or audio playback.

4. Verify all media control buttons respond appropriately (use Xbox Movies for reference.)

Expected result:

The application responds properly to gamepad and remote control buttons.

Page 42: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

More information:

For more information on gamepad and remote control button mappings: XBox Apps - Gamepad and

Remote Control

12.4 Collapsed navigation pane

A navigation pane (also known as a hamburger menu) is a navigation control commonly used in UWP

applications. Typically, it is a pane with several options to choose from in a list style menu that will

take the user to different pages. Generally, this pane starts out collapsed to save space, and the user

can open it by selecting a button.

Steps to Reproduce:

1. Launch the application.

2. Ensure the navigation pane is collapsed when the application is started.

Expected result:

So that more real estate is available to content, Xbox applications should start with the navigation

pane collapsed.

More information:

For more information on Navigation panes see: Navigation Panes

12.5 All controls should be accessible via d-pad

D-pad navigation is strictly up, down, left and right. Avoid positioning controls that cannot be

navigated to with these constraints.

Page 43: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

Steps to Reproduce:

1. Launch application.

2. Ensure all controls can be navigated to using the d-pad.

Expected result:

All controls should be accessible via the d-pad

More information:

For more information on Navigation panes see: XY focus navigation and interaction

12.6 Snapped applications

The application UI should adapt when other applications are snapped next to it.

Steps to Reproduce:

1. Launch the application.

2. Double tap the Xbox button to bring up the Guide.

3. Navigate down to the “Multitasking” tab.

4. Select an application that supports snapping along the application in test (ex: Cortana).

5. Tap the Xbox button to return to the dashboard and select the application in test.

6. On each page in the application in test, inspect the layout and application functionality,

playing videos whenever available.

Expected result:

All application pages render properly and the UI adapts when another application is snapped next to

it. Ex: no text or video truncation, all buttons are accessible, etc. The application may have to run in

“fill mode” next to a snapped application.

Page 44: Test Cases for Universal Windows Platform (UWP) and Windows …download.microsoft.com/download/D/6/E/D6E1AD41-B3FF-4E4A... · 2018-10-16 · Test Cases for Universal Windows Platform

More information:

For more information see: Design adaptive UI with adaptive panels

12.7 Back button for Xbox

The application should properly navigate back through pages when using the B button.

Steps to Reproduce:

1. Launch the application.

2. Navigate to the second or third page within the application.

3. Select the back button on the gamepad (B) until reaching the homepage of the application.

Expected result:

The application should navigate back through the previously selected pages in the correct order and

eventually arrive at the application homepage.

More information:

Designing for Xbox and TV: Gamepad and remote control

12.8 Cloud storage or removable media support

When applicable, users should be able to easily access files from or save to cloud storage or

removable media.

Steps to Reproduce:

1. Launch the application.

2. Navigate to an area that accesses user files (ex: “My Videos”, “Import”, “Save As”, etc.).

3. Attempt to access or save content to the cloud or to removable media (i.e. USB drives) from

within the application.

Expected result:

If the application supports accessing or creating files, it should provide ways for users to:

• Access their content from or save to the cloud from within the application or

• Access their content from or save to removable media (i.e. USB drives) from within the

application.