UI Test Catalog
Some of the most obvious errors are not included, such as "clicking on a button does not crash or does nothing." Complex matters such as security (e.g., hacker injections via Inputs or File Uploads) and performance concerns are out of scope.
Most of the items below apply to Web, Desktop, and Mobile UIs.
General
Grammar and spelling: incorrect, inconsistent (e.g. US vs. UK styles)
Text size, color, family: inconsistent, too big, too small, misaligned
Language and terms: inconsistent style, obscure abbreviations that were not introduced
Communication:
Absent or insufficient information onscreen
Failure to refer to documentation when appropriate
Excessive, confusing information (checked by someone without prior knowledge)
Failure to acknowledge input or submission
Failure to show activity during long delays
Failure to advise when a change will take effect
2+ names for the same feature
Death by a thousand papercuts. Small issues add up. Even minor grammar errors in an otherwise functional product can reduce user confidence and appeal, potentially resulting in lost business, such as discouraging upgrades to a paid version.
Text and Number Input Fields
These are grouped because a string may be input into a number field as an invalid value, and vice versa - a number into a text field. If any of the below items seem unlikely to happen and you wish to say "The user will never do that" or "This should never happen", remember the Assume Misuse heuristic.
Note: LB - Lower Boundary, UB - Upper Boundary.
Common:
Blank (empty)
Whitespace only (space, tab)
Valid Value
LB value
UB value
Far above UB value and far below LB value (see Special Values)
Special characters (non-Latin characters, Russian letters, Chinese characters, other alphabets, emojis)
One or more leading spaces
One or more trailing spaces
OS filename reserved chars (e.g.,
"\*.")
Numbers:
0,0.0,0.1,0.00000001, etc.Wrong data type (decimal when an integer is expected)
LB value - 1 (or -0.1 or -0.01, etc.)
UB value + 1 (or +0.1 or +0.01, etc.)
Negative numbers
One or more leading zeroes
Number overflow. e.g., for 32-bit integers, what happens when adding 4 billion to 4 billion?
Both plus and minus signs, e.g.,
+-4and-4e+30Internationalisation i18n issues: In English applications, the correct format is
12,345.67, but in German it's the opposite -12.345,67.
Strings:
Just below the allowed length
Just above the allowed length
Far above the allowed length (e.g., attempt to paste in a very long string into a field with a hard length limit)
Button
Appropriate and consistent color reflecting the action (e.g., Blue/Green for "Submit", Red for "Delete")
Default state: enabled or disabled?
Failure to update state (enabled/disabled) as a response to the user's actions
Submit/Send/Pay button fails to become disabled while the request is processing
Radio button
The appropriate option is selected
NOT used for optional input (use checkboxes instead)
Interactions Between Inputs
Failure to show/hide/update the state of one input or element as a result of another action. For example:
Check checkbox A: additional inputs or information appear
Select radio button B: the irrelevant part of the web form becomes disabled
Hyperlinks
Broken
Lead to incorrect resource
File Upload
Client-side handling:
Failure to specify the allowed format, if any
Failure to prevent disallowed formats
Failure to prevent file upload with a size exceeding the specified limit
Failure to inform of failed upload (e.g., due to network interruption)
Failure to indicate a successful upload
Failure to allow selecting multiple files when supported
Failure to allow cancellation of an in-progress upload
Failure to show upload progress for large files
Server-side handling:
Failure to process the file as intended
Failure to handle a file when the back-end storage limit is reached
Failure to parse the file due to unexpected encoding, file name, or format (client-side validation failed or bypassed)
Failure to reject unauthorized upload attempts
Failure to clean up partially uploaded files
Failure to handle duplicate file names as intended
File Download
Incorrect file or file format downloaded
Incorrect information in the downloaded file
No relevant information, such as "The download should start shortly, if not - click this link"
No way to check the File's checksum provided (when appropriate)
State
Software may save, restore, and reset state as appropriate. See Advanced State Testing and CRUD Testing for more test ideas.
Error Messages
Failure to explain why the error happened at the appropriate level for the user (e.g., no tech jargon for non-technical users)
Failure to instruct the user on what to do next
Failure to provide a way out or go back (or forward)
See Testing Failures and Errors for more test ideas and the CLEAR LOG mnemonic.
Accessibility
A large, continuously evolving domain. Web accessibility encompasses all disabilities that affect access to the Web, including, but not limited to:
auditory
cognitive
neurological
physical
speech
visual
To avoid duplicating the content that may only become stale, this page refers to the W3C Web Accessibility Initiative (WAI).
Usability
Same as Accessibility. Refer to these resources:
Baymard Institute (paid access)
Last updated