Learn how to test a website on mobile with a repeatable responsive design and browser QA checklist covering viewport sizes, touch input, orientation, accessibility, performance, and bug reporting.
Overview
Testing a responsive website is more than dragging a desktop browser window until the layout looks narrow. A site can appear correct at one width while failing on a real phone because of browser differences, dynamic address bars, touch targets, keyboard behavior, slow connections, or content that was never tested at realistic lengths.
This mobile browser testing workflow separates visual checks from functional, accessibility, and performance checks. Use it before a launch, after a redesign, whenever a breakpoint changes, and during regression testing. You do not need every phone on the market. Start with representative viewport sizes and browsers, then verify important flows on physical devices whenever possible.
Viewport and breakpoint reference
Breakpoints should respond to where the content stops working rather than to a fixed list of device names. The following ranges are useful test points, not mandatory design targets:
| Test range | What to inspect |
|---|---|
| 320–360 CSS pixels wide | Text wrapping, cramped controls, horizontal overflow, and minimum touch spacing. |
| 375–430 CSS pixels wide | Common phone layouts, navigation behavior, cards, forms, and image cropping. |
| 600–768 CSS pixels wide | Transition between phone and tablet layouts, two-column content, and breakpoint logic. |
| Landscape phone | Reduced vertical space, sticky headers, dialogs, video, and keyboard overlap. |
These values describe CSS viewport width, not necessarily the physical pixel resolution shown in a device specification. Browser zoom, display scaling, and device-pixel ratio can change how a screen is reported.
Checklist by scenario
1. Test the basic responsive layout
- Load the page at the smallest supported width and check for horizontal scrolling.
- Resize gradually rather than checking only preset device profiles. Note the width at which the layout begins to fail.
- Confirm that navigation changes cleanly and that menus can be opened, closed, and dismissed.
- Check headings, buttons, cards, tables, images, code blocks, and embedded media for overflow.
- Verify that images preserve their intended aspect ratio and do not cover nearby text.
- Check fixed, sticky, and floating elements while scrolling. They should not hide the main content or important controls.
- Test long words, URLs, filenames, error messages, and translated or unusually lengthy labels.
2. Test touch and interaction
- Tap every primary action without relying on a mouse hover state.
- Confirm that links and controls have enough separation to reduce accidental taps.
- Test menus, accordions, carousels, date fields, dropdowns, modals, and drag interactions.
- Make sure a control has a visible focus or active state after interaction.
- Check whether tapping a link opens the expected destination and whether back navigation preserves useful page state.
- Test forms with the on-screen keyboard open. Confirm that the active field and submit button remain usable.
- Verify that password visibility controls, clear buttons, search suggestions, and validation messages work with touch.
3. Test orientation and available space
- Rotate between portrait and landscape before and after entering data.
- Check whether a modal, video, map, or image remains contained after rotation.
- Inspect sticky headers and footers when the browser toolbar changes height.
- Confirm that content is not hidden behind device cutouts or browser-safe areas where those apply.
- Return to portrait mode and verify that the layout recalculates instead of retaining an incorrect width or scroll position.
4. Test browsers and rendering differences
Use the major browser engines relevant to your audience, plus at least one physical iOS or Android device when the site depends on camera access, notifications, media playback, biometrics, or other hardware features. Browser developer tools are useful for quick coverage, but emulation cannot reproduce every difference in scrolling, keyboard behavior, permissions, or device performance.
- Run the same smoke test in your primary desktop browser and at least one alternative browser.
- Repeat important flows in mobile browsers used by your audience.
- Check feature detection and fallback behavior for unsupported or restricted APIs.
- Test deep links, redirects, authentication, downloads, and external app handoffs.
- Clear cached assets or use a fresh session when investigating a release issue.
5. Test slow connections and interruptions
- Load the page with throttled network conditions and watch for blank areas, layout shifts, or controls that become unusable.
- Confirm that essential content appears before optional images, analytics, or third-party widgets.
- Test a failed image, interrupted request, expired session, and server error.
- Check loading states, retry controls, disabled buttons, and duplicate-submission protection.
- Repeat the test after clearing the cache to distinguish first-load problems from returning-visitor behavior.
6. Check accessibility on a phone
- Navigate with a screen reader or mobile accessibility service and confirm that headings, landmarks, labels, and button names are meaningful.
- Increase text size and verify that content remains readable without forcing users into horizontal scrolling.
- Test color contrast, link visibility, error messages, and status updates without relying on color alone.
- Confirm that focus order follows the visual and functional order of the page.
- Check that dialogs trap focus appropriately and return focus to the triggering control when closed.
- Ensure motion, autoplay, and animated transitions do not prevent users from completing a task.
What to double-check before release
Prioritize the paths that affect users and revenue rather than treating every page as equally important. At minimum, test the homepage or entry page, navigation, search, sign-in, registration, checkout or contact forms, and any workflow introduced in the release.
Use realistic test content. A responsive design that works with short placeholder text may fail with a long product name, a multi-line validation error, an empty state, or a user-generated comment. Include populated, empty, loading, error, and permission-denied states in your test data.
For each defect, record the device or emulator, operating system, browser and version, CSS viewport width and height, orientation, network condition, account state, URL, exact reproduction steps, expected result, actual result, and a screenshot or screen recording. State whether the issue is consistent or intermittent. This information makes a bug actionable instead of turning it into a vague request to “fix mobile.”
Reusable bug-report format
Title: [Mobile] Search button overlaps the filter panel
Device: [model or emulator]
OS: [version]
Browser: [name and version]
Viewport: [CSS width x height]
Orientation: [portrait or landscape]
Network: [normal or throttled]
URL: [page address]
Steps:
1. Open ...
2. Tap ...
3. Rotate or scroll ...
Expected: ...
Actual: ...
Frequency: [always, intermittent, once]
Evidence: [screenshot or recording]
Common mistakes
- Testing only one modern phone: A single device cannot reveal every browser, viewport, input, or performance issue.
- Checking screenshots instead of tasks: A page can look correct while its menu, form, checkout, or authentication flow is broken.
- Using device names as breakpoints: Content-driven breakpoints are more durable than assumptions about a particular model.
- Ignoring landscape mode: Short vertical space exposes problems that remain hidden in portrait orientation.
- Relying entirely on emulation: Use developer tools for efficient coverage, then validate device-specific behavior on hardware.
- Skipping real content: Long labels, errors, empty states, and user-generated text often expose the most useful defects.
- Fixing symptoms with hidden overflow: Hiding horizontal overflow can conceal a broken layout and make content unreachable.
- Leaving accessibility until the end: Semantic structure, labels, focus behavior, and readable scaling should be checked during development.
When to revisit this checklist
Run the complete checklist before a major launch, redesign, seasonal campaign, or release that changes navigation, forms, media, authentication, or responsive CSS. Run a smaller smoke test after every deployment that touches shared components or breakpoints. Revisit the browser and device matrix quarterly, or sooner after a major browser, operating system, framework, or testing-tool change.
Keep a short regression suite for the most important user journeys: open navigation, read content, submit a form, sign in, complete the primary transaction, and recover from an error. Record the last tested browser and device combinations beside the release notes. When a defect is fixed, test the original reproduction steps and at least one neighboring viewport so the fix does not create a new breakpoint problem.
For the next release, choose three representative viewport sizes, one portrait-to-landscape rotation test, one throttled-network run, and one accessibility pass. Complete those checks on the highest-value user flow, document any failures with the bug format above, and only then expand coverage to secondary pages.