AI Prompt
"Propose compatibility test cases for [feature]
across [browsers/devices/OS versions]. Include viewport/resolution, touch
vs mouse, offline/poor network, and platform-specific quirks."
Applying Critical Thinking
·
Define the
support matrix first: Which browser/device/OS combinations are “must
work” vs “best effort”? Document and prioritize.
·
Identify
platform-specific behavior: Safe area insets, viewport units, touch
events, back/forward cache, autoplay policies, file upload on mobile.
·
Touch vs mouse:
Touch has no hover; multi-touch and gestures differ; click delay and scroll
behavior vary.
·
Network as a
variable: Offline, slow 3G, and flaky WiFi change loading,
caching, and error handling; test these explicitly.
Generate Test Cases for Each Feature
·
Viewport/resolution:
Key breakpoints (e.g. 320, 768, 1024, 1440); orientation change; foldables;
notch/safe area; zoom 100% vs 200%.
·
Touch vs mouse:
Tap = click; no hover states on touch; swipe/carousel; long-press;
pinch-zoom; double-tap zoom; scroll momentum.
·
Offline/poor
network: App loads then goes offline: cached content, error message,
retry; slow 3G: timeouts, loading states, partial content.
·
Browser-specific:
Safari: date input, flexbox gaps, position:fixed; Chrome: autofill, download
behavior; Firefox: scrollbar width; Edge: PDF/legacy.
·
OS-specific:
iOS: keyboard resizing, rubber-band scroll, input zoom; Android: back button,
share sheet, keyboard variants; system dark/light mode.
·
Forms and
inputs: Date/time pickers, file upload (camera vs gallery),
autocomplete, virtual keyboard overlap, paste behavior.
·
Media and
playback: Video autoplay policies, fullscreen API,
picture-in-picture; audio focus; codec support.
Questions on Ambiguities
·
What is the official support matrix (browsers,
versions, devices)? Is it documented and agreed with product?
·
How should the app behave when offline (full
PWA, read-only cache, or “please connect” only)?
·
Are touch and mouse both primary on hybrid
devices (e.g. Surface), or is one secondary?
·
What minimum viewport is supported (e.g. 320px
width), and is there a maximum (e.g. ultra-wide)?
·
Are old OS versions (e.g. iOS 14) out of scope,
and how are users informed?
·
Do we support reduced motion or high
contrast at the compatibility level, or is that accessibility-only?
Areas Where Test Ideas Might Be Missed
·
Back/forward cache (bfcache): pages restored
from cache can show stale state or fire unexpected events; test navigate
away and back.
·
Third-party cookies / ITP: Safari and others
restrict cookies; login or tracking may behave differently.
·
Fonts and assets: system vs web fonts; missing
or slow CDN; different font rendering (e.g. Safari vs Chrome).
·
Copy/paste and share: Clipboard API, share
target; behavior differs on mobile.
·
Deep links and app links: opening app from
link; fallback to browser when app not installed.
·
Updates mid-session: user upgrades OS or browser
during a long session; optional test for critical flows.
·
Multiple tabs/windows: same app in two
tabs; sync, locking, or messaging between tabs.
Output Template
Context: [system/feature under test, dependencies, environment]
Assumptions: [e.g., auth method, data availability, feature flags]
Test Types: [compatibility, cross-browser, mobile]
Test Cases:
ID: [TC-001]
Type: [compatibility]
Title: [short name]
Preconditions/Setup: [data, env, mocks, flags]
Steps: [ordered steps or request details]
Variations: [inputs/edges/negative cases]
Expected Results: [responses/UI states/metrics]
Cleanup: [teardown/reset]
Coverage notes: [gaps, out-of-scope items, risk areas]
Non-functionals: [perf targets, security considerations, accessibility notes]
Data/fixtures: [test users, payloads, seeds]
Environments: [dev/stage/prod-parity requirements]
Ambiguity Questions:
- [Question 1 about unclear behavior]
- [Question 2 about edge case]
Potential Missed Ideas:
- [Suspicious area where tests might still be thin]