Testing

February 25, 2026 ยท View on GitHub

Warning
This documentation is out-of-date and needs reviewing and updating.

Screen resolution testing

You should test at all the standard device screen resolutions and the top 8 screen resolutions for NHS.UK (in both landscape and portrait mode). This combined will give us confidence that it will work for the majority of our users.

Standard devices

Google Chrome DevTools has a preset list of standard device screen resolutions to test against. See Simulate Mobile Devices with Device Mode in Chrome DevTools and Test Responsive and Device-specific Viewports.

NHS website resolution statistics

These statistics are from the NHS website, using Google analytics, over a 1 year period (June 2017 to June 2018).

DeviceScreen resolution% of sessions
iPhone 6-8375x66720.93%
Galaxy S8360x64014.92%
iPhone 5/SE320x56810.41%
iPad768x10247.17%
iPhone 6+, 6s+, 7+, 8+414x7364.87%
Surface, iPad Pro1366x7684.10%
Large Desktop1920x10802.45%
Small Desktop, Laptop1280x10241.21%

Browser support

'Compliant' means that components should look and function as they were designed to do in other modern browsers.

'Latest versions' refers to the latest stable version and the version immediately before that.

We no longer support older versions of Internet Explorer. This is due to the very low and falling numbers that these browsers make up compared to our total visits. Read the blog post Changing our testing requirements for Internet Explorer 8, 9 and 10 by GOV.UK for more information on why we have done this.

Operating systemBrowserSupport
WindowsInternet Explorer 11compliant
WindowsEdge (latest versions)compliant
WindowsGoogle Chrome (latest versions)compliant
WindowsMozilla Firefox (latest versions)compliant
macOSSafari 12+compliant
macOSGoogle Chrome (latest versions)compliant
macOSMozilla Firefox (latest versions)compliant
iOSSafari for iOS 12.1 and latercompliant
iOSGoogle Chrome (latest versions)compliant
AndroidGoogle Chrome (latest versions)compliant
AndroidSamsung Internet (latest versions)compliant

Assistive technology support

SoftwareTypeBrowser
JAWSWindows desktop screen readerInternet Explorer 11, Chrome (latest version)
NVDAWindows desktop screen readerFirefox (latest versions)
VoiceOverApple mobile and desktop screen readerSafari 12+
TalkBackAndroid mobile screen readerChrome (latest version)
Dragon NaturallySpeakingWindows speech recognitionInternet Explorer 11
ZoomTextWindows desktop screen magnifierInternet Explorer 11

Testing with the various technologies above should cover the vast amount of users who use assistive technologies.

How to test

Screen readers

The following should be checked when testing using a screen reader:

  • every element can be read
  • links and form elements can be keyboard tabbed to
  • landmarks are announced correctly
  • ARIA attributes are correctly used
  • form elements can be used correctly

Screen magnifiers

The following should be considered when testing using a screen magnifier:

  • use various levels of magnification, up to at least 10 times
  • ensure scroll width for content is not too long and can be easily understood
  • ensure form elements and their labels are close to each other

Speech recognition

The following should be considered when testing using speech recognition software:

  • every link can be accessed
  • every form element can be accessed
  • every interactive element can be accessed

Colour schemes

Use the operating system's different colour schemes and ensure that content is clear and viewable. Examples of colour schemes include:

  • different contrast modes
  • inverted colours
  • greyscale

Automated testing

Run the automated test suites from the repository root:

# Run all workspace tests
pnpm test

# Run tests for a specific package
pnpm test:toolkit
pnpm test:react-components

You should also run linting before opening a PR:

pnpm lint

Related docs: