> For the complete documentation index, see [llms.txt](https://docs.does.qa/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.does.qa/choosing-a-test-automation-approach/coverage-and-speed.md).

# Coverage and speed

How DoesQA covers real user journeys and product capabilities end to end, and how fast a regression suite can run on hosted runners.

DoesQA is end-to-end testing you can run at scale and trust. If a person can do something in your product, your Tests should be able to do that thing too. Coverage is both the **journeys** you prove and the **capabilities** you get in one product. Speed comes from hosted runners running Test Cases in parallel.

There is no artificial ceiling on how much you can cover. The pack grows with your product. DoesQA is built to hold that depth.

## Coverage by journey

Measure coverage by **real user journeys** in the pack. If an important path exists in the product, the pack should have a Test Case that walks that same path. That is journey coverage.

A strong pack runs those paths in a real browser, in one Flow.

Examples DoesQA is built to cover end to end (journeys coded teams often split across tools or skip):

| Journey                                                                                 | What you prove in DoesQA                                                                                                 |
| --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| [Register with email confirmation](/guides/test-registration-and-email-verification.md) | Form submit, wait for the message, open the inbox, follow the link, land in the product                                  |
| [Log in with MFA](/guides/test-mfa-login.md)                                            | Credentials, MFA code from a saved secret, reach the authenticated app                                                   |
| [Forgotten password](/guides/test-a-forgotten-password-flow.md)                         | Reset request, email, new password, successful sign-in                                                                   |
| [Checkout and payments](/guides/test-checkout-and-payments.md)                          | Cart through pay, including frames and payment widgets when the journey needs them                                       |
| Post-login accessibility                                                                | [Accessibility](/better-coverage/add-accessibility-checks.md) checks on authenticated pages, not only the marketing site |
| Dynamic UI (modals, popups, overlays)                                                   | Open, dismiss, and assert on Elements that appear only after an action                                                   |
| [SEO](/better-coverage/test-seo.md)                                                     | Meta and structure checks beside the functional path                                                                     |
| [Load time / performance](/better-coverage/test-page-performance.md)                    | Time-based Checks so a silent slowdown fails the Test Case                                                               |
| [Tabs, windows, and frames](/guides/test-tabs-windows-and-frames.md)                    | Multi-surface journeys without a second framework                                                                        |
| [File upload and download](/guides/test-file-uploads-and-downloads.md)                  | Generate or attach files inside the same Flow                                                                            |
| [API calls inside a UI journey](/guides/test-apis-in-a-flow.md)                         | Seed or assert data without leaving the Flow                                                                             |

Grow many Test Cases from shared steps with [Flow Branches](/better-coverage/choose-flow-branch-shapes.md), [Tag Test](/test-steps/utility/tag-test.md), [Step Groups](/better-coverage/reuse-steps-with-step-groups.md), and [Elements](/elements/creating-elements.md). Smoke and full regression can live in one Flow. See [Build smoke and regression coverage](/better-coverage/build-smoke-and-regression-coverage.md).

## Coverage by capability

The same product also wins on **capabilities**. In Playwright you usually assemble runners, reporting, mail, MFA, a11y, SEO, and schedules yourself. In DoesQA they are included and work together.

Journey capabilities (the same hard journeys as product features and Test Steps):

| Capability                         | In DoesQA                                                                                                                                 |
| ---------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| Test email inbox                   | [Mail](/test-steps/mail/wait-for-email.md) Test Steps                                                                                     |
| MFA codes                          | [Set MFA](/test-steps/action/set-mfa.md) and [MFA](/configuration/mfa.md)                                                                 |
| Accessibility                      | [Accessibility](/test-steps/validator/accessibility.md), [Axe](/test-steps/validator/axe.md), [Pa11y](/test-steps/validator/pa11y.md)     |
| SEO                                | [SEO](/test-steps/validator/seo.md)                                                                                                       |
| Performance / load time            | [Performance](/test-steps/validator/performance.md) and [Check load time](/test-steps/check/check-load-time.md)                           |
| Visual checks                      | [Element Snapshot](/test-steps/vision/element-snapshot.md) and [Element Position](/test-steps/vision/element-position.md)                 |
| Dynamic Elements (popups, dialogs) | Ordinary [Touch](/test-steps/action/touch.md) and [Check](/test-steps/check/check-displayed.md) steps on Elements that appear mid-journey |
| Shadow DOM                         | [Shadow DOM](/elements/selector-types/shadow-dom.md) Selectors                                                                            |
| Frames and tabs                    | [Switch frame](/test-steps/runner/switch-frame.md), [Next tab](/test-steps/browser/next-tab.md), and related steps                        |
| Files                              | [Generate File](/test-steps/runner/generate-file.md) and [File](/test-steps/action/file.md)                                               |
| API and SFTP                       | [Integration](/test-steps/integration/get.md) Test Steps                                                                                  |

Platform capabilities (what surrounds every journey):

| Capability                                   | In DoesQA                                                                                                                                                                                                       |
| -------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Hosted Test Runners                          | Included from signup. Parallel Runs on DoesQA runners, with concurrency that can scale with your account (including **unlimited** on large accounts). See [Max Concurrency](/configuration/max-concurrency.md). |
| Clear, shareable Results                     | Step timeline, screenshots, and video with the Run. See [Understand your results](/getting-started/understand-your-results.md).                                                                                 |
| [Schedules](/configuration/schedules.md)     | Recurring packs without wiring your own cron                                                                                                                                                                    |
| [Run Recipes](/configuration/run-recipes.md) | Saved filters and Value overwrites for smoke vs regression                                                                                                                                                      |
| [CI/CD](/configuration/ci-cd.md)             | Trigger the same packs from the pipeline                                                                                                                                                                        |
| Notifications                                | [Slack](/configuration/notifications/slack.md), email, and webhooks                                                                                                                                             |
| Reuse at scale                               | [Step Groups](/better-coverage/reuse-steps-with-step-groups.md), shared [Elements](/elements/creating-elements.md), and [Flow Branches](/better-coverage/choose-flow-branch-shapes.md)                          |

For a side-by-side with Playwright, Cypress, and Selenium, including the [hidden costs of free](/choosing-a-test-automation-approach/doesqa-compared.md#hidden-costs-of-free) frameworks, see [DoesQA, Playwright, Cypress, and Selenium compared](/choosing-a-test-automation-approach/doesqa-compared.md).

## How quickly can DoesQA run a regression suite?

Test Cases run in parallel on DoesQA Test Runners. You control how wide a Run goes in **Settings → Runners** under [Max Concurrency](/configuration/max-concurrency.md).

On accounts **with unlimited concurrency**, large suites finish in the time the slowest paths need, not the sum of every Test Case.

**Example:** **935** Tests (about **two full days** of automated running time) completed in **29 minutes** in parallel.

Design still matters. Tag a short smoke path for a fast pack, and keep the full regression for when you want depth. Point [Schedules](/configuration/schedules.md), [Run Recipes](/configuration/run-recipes.md), and [CI/CD](/configuration/ci-cd.md) at the tags that match each job.

## If you already have automated coverage

DoesQA does not replace every layer of a mature stack. It is end-to-end coverage you can run at scale and trust: real browsers, real journeys, and Results you investigate when red.

Teams often use DoesQA to:

* Cover journeys that are slow or fragile in a coded UI suite (email, MFA, popups, frames)
* Pull accessibility, SEO, and performance into the same Flow instead of extra tools
* Sit beside unit and lower-level API checks as the product-facing safety net

For the build model, see [Codeless vs coded test automation](/choosing-a-test-automation-approach/codeless-vs-coded.md).

## Related

* [Build smoke and regression coverage](/better-coverage/build-smoke-and-regression-coverage.md)
* [DoesQA, Playwright, Cypress, and Selenium compared](/choosing-a-test-automation-approach/doesqa-compared.md)
* [Max Concurrency](/configuration/max-concurrency.md)
* [Run Recipes](/configuration/run-recipes.md)
* [Schedules](/configuration/schedules.md)
* [Trigger Runs from CI/CD](/configuration/ci-cd.md)
* [Maintenance and reliability](/choosing-a-test-automation-approach/maintenance-and-reliability.md)
* [Security and trust](/choosing-a-test-automation-approach/security-and-trust.md)
* [Codeless vs coded test automation](/choosing-a-test-automation-approach/codeless-vs-coded.md)
