Test Scope
Test scope is the agreed boundary of testing for one project, release or sprint: which test items are tested (applications, services and their versions), which features and quality characteristics, at which test levels, on which platforms and in which languages — and, just as explicitly, what is not tested. The ISTQB Foundation syllabus (v4.0) lists test scope as part of the context of testing in a test plan, next to the test objectives and the test basis.
For example, release 4.2 of Bustan Market, the fictional marketplace from the test strategy guide, adds payment in instalments through an external provider. In scope: the new payment option on web and both apps in Arabic and English, eligibility rules, refunds, and regression of the payment methods that share its code. Out of scope: the provider’s own credit decision, which the provider tests.
Why it matters
Unclear scope fails in two directions. Gaps appear when everyone assumes someone else tests an area — refunds, the Arabic receipt, the older app version customers still use — and its first test happens in production. Waste appears when the team spends days on areas that did not change or that another team owns.
Scope is also the input to the estimate, the schedule, the environments and the exit criteria. When scope grows and nobody adjusts them, the team either misses the date or releases with tests silently skipped. For the tester, a written, agreed scope is protection as well as a duty: a defect in an area excluded for a reason the product owner accepted leads to a discussion about that decision, not about blame — and you are expected to say what each exclusion risks.
What a test scope defines
A useful scope statement is specific enough that two people give the same answer to "is this tested?": it names items by ID and version, not by words such as "checkout" or "the app". Start from the default scope in the test strategy and apply it to what changed, across these dimensions:
- Test items: the parts of the test object to be tested, such as applications and services, each with its version, for example web 4.2, the iOS and Android apps 4.2 and payments API v3.
- Features and changes: stories, requirements or change requests by ID, plus the existing features the change affects.
- Quality characteristics and test types: functional, performance, security, accessibility, compatibility — and which apply this time.
- Test levels: for example system and system integration testing by QA, component testing by developers in CI.
- Platforms, browsers, devices, languages and regions that will actually be used.
- Interfaces: where our testing stops, such as "our side of the payment provider integration, in its sandbox".
- Depth: in scope is not a yes/no flag. In the ISTQB syllabus, product risk analysis determines both the test scope and its thoroughness: each item gets a risk level and the depth that follows from it.
Out of scope: a decision with a reason
An out-of-scope list is a list of decisions, not of things you forgot. Each exclusion records the item, the reason, who covers it instead and who agreed; if it leaves a risk, the person who owns the release, usually the product owner, accepts that risk explicitly. ISO/IEC/IEEE 29119-3, the test documentation standard, asks for the core of this in a test plan’s test scope: the features excluded from testing and the rationale for excluding them.
An exclusion is agreed explicitly: when the scope is agreed before testing starts, or later as a recorded scope change. A planned test that was not executed — blocked environment, no time left — is not "out of scope": it is a coverage gap that the progress and completion reports must show as residual risk.
Reasons that usually hold up in a scope review:
- Unchanged and not affected by the change; the regression suite covers it.
- Owned by another team or a vendor: they test it; you test your side of the interface and ask for their evidence.
- Not part of this release.
- Not testable in the available environments: state what replaces it, such as mocked responses or a check after deployment.
- Low risk, explicitly accepted by the product owner.
In scope
Tested in this release, at an agreed depth
- Each entry records:
- Item ID, version, risk level and depth
- Typical reason:
- New or changed, or affected by the change
- Example: Bustan Market 4.2:
- Instalment option at checkout, web and apps, Arabic and English
- Who decides:
- QA proposes; product owner and dev lead agree
- If it changes:
- Removing it or cutting its depth is a scope change: it needs a decision
- At test completion:
- Coverage, results and open defects reported
Out of scope
Deliberately not tested by this team in this release
- Each entry records:
- Reason, who covers it instead, who agreed
- Typical reason:
- Unchanged, owned by another team or vendor, or not in this release
- Example: Bustan Market 4.2:
- Provider’s credit decision: the provider tests it; we test our side in its sandbox
- Who decides:
- QA proposes; the product owner accepts the residual risk
- If it changes:
- Bringing it in needs an impact estimate and a decision
- At test completion:
- Listed again as not tested, with the accepted risk
How to agree and document scope
Testing proposes the scope; the people who own the product and the release agree it, usually in a short scope review.
- Collect the basis: release notes, stories and acceptance criteria, the change list and the strategy’s default scope.
- Find what the change touches: ask developers which components, data and integrations are affected; traceability shows the linked requirements and tests.
- Draft both lists — in scope with ID, risk and depth, out of scope with reason and owner — and mark open questions instead of guessing.
- Review them with the product owner, the development lead and anyone covering an excluded item. Read the out-of-scope list aloud; misunderstandings surface there.
- Record the result in the test plan’s scope section or the one-page sprint test plan, with version, date and approver.
- Agree the change rule: who may request a change, who estimates its impact and who decides.
Worked example: the scope of an instalment-payments release
The statement below is the agreed scope for Bustan Market 4.2 after a 30-minute review. Every out-of-scope line has a reason and an owner, the boundary with the provider is precise, and the one accepted risk is written down.
The depth column turns each risk level into concrete tests: BUS-902 lists the 2-value boundary values of the eligibility range, and the regression line brings the unchanged payment methods into scope because they share the changed checkout code.
TEST SCOPE - Bustan Market 4.2 "Pay in instalments" (fictional) v1.0
Basis: BUS-901..905, test strategy v1.2 Agreed: PO, dev lead, QA lead (day 1)
IN SCOPE Risk Depth
BUS-901 Instalment option at checkout, High boundaries, negative,
web + iOS + Android, ar/en exploratory, auto API
BUS-902 Eligibility: total 200.00 to 5,000.00 High 199.99 / 200.00 /
SAR, signed-in customers only 5,000.00 / 5,000.01
BUS-903 Instalment schedule in "My orders" Medium dates, amounts, ar/en
BUS-904 Refund, partial refund, cancellation High before and after the
of instalment orders first instalment
BUS-905 Our handling of provider webhooks Medium approved, declined,
(approved, declined, expired) expired, duplicate
Regr. Card, mada, Apple Pay, cash on delivery Medium automated checkout
(they share the checkout code) suite + 2 devices
OUT OF SCOPE Reason Covered by
Provider credit decision provider-owned service provider; we test our
and the provider app side in its sandbox
Seller portal unchanged in 4.2 nightly regression suite
Load test of provider API not ours to load-test provider SLA (PO agreed)
Accepted risk provider outage tested with mocked responses only (PO, day 1)
Assumptions provider sandbox from day 1; synthetic customers only
Changes request to PO -> QA impact note -> PO decides -> scope v1.1, v1.2Scope creep: recognise it and control it
Scope creep is the growth of scope after it was agreed, without a matching change to time, people or exit criteria. It rarely arrives as a formal request: it looks like "while you are at it, can you also check…", acceptance criteria rewritten after test design (compare the old and new text to see exactly what changed), or a late change merged into the release branch.
Change itself is normal. The 2020 Scrum Guide says that during a Sprint, scope may be clarified and renegotiated with the Product Owner as more is learned, and that no changes are made that would endanger the Sprint Goal. The problem is change that bypasses the agreement.
In week 2 of the Bustan Market release a message arrives: "Can instalments also work for gift card orders? Small change." The tester replies with an impact note (a separate refund rule, gift card checkout regression, about three extra tester-days) and three options: extend testing, move it to 4.3, or reduce exploratory testing of the instalment option (BUS-901) with that risk accepted. The product owner chooses 4.3; scope v1.1 records it.
- Assess: new tests, regression, effort and risk.
- Offer options: more time, defer the change, or reduce something else with its risk accepted.
- Decide and record: the owner chooses; update the scope version, the estimate and the exit criteria.
- Watch the reverse: dropping planned tests at the end for lack of time also changes the agreed scope; it needs the same decision and is reported as residual risk, not relabelled as out of scope.
Common mistakes
- Writing only the in-scope list, so every stakeholder assumes their area is covered.
- Excluding items without a reason or an owner: "not tested" is not a decision.
- Describing scope with vague words ("checkout", "the app") instead of IDs, versions, platforms and languages.
- Giving everything in scope the same effort, so a high-risk payment rule and a label change both get one quick pass.
- Absorbing "small" additions without an impact assessment, then missing the date or cutting tests silently.
- Deciding exclusions alone: accepting a risk on behalf of the business is the product owner’s decision.
The QA perspective
On a real team, scope is drafted in test planning, right after release or sprint planning, and revisited at every change. You settle with the product owner what matters, with developers what the change touches, and with vendors and owners of shared components who tests what at each interface. The questions that pay off most: "what changed, and what depends on it?", "who else tests this, and with what evidence?" and "what happens if we do not test this?".
Version the scope statement and report against it: status reports show coverage of the agreed scope, and the test completion report repeats the exclusions and the accepted residual risks, so the release decision is taken with the full picture. The ISTQB syllabus lists scope creep among project risks: when it repeats, log it in the risk register.
Practice exercise
Scope a clinic booking release and handle a change request
Release 3.1 of Shifa Clinics, a fictional booking app on web, Android and iOS in Arabic and English, contains: (1) booking and card payment for video consultations; (2) a cancellation link in the reminder SMS sent 24 hours before an appointment; (3) a weekly schedule view for doctors in the admin portal.
Context: the video call runs on an external service embedded in the app and tested by its vendor. Patient records and lab results are unchanged. The SMS gateway is shared with the pharmacy app and owned by another team. You have two testers and ten working days. Write the scope statement. On day 6 the product owner writes in chat: "Can you also check paying with insurance for video consultations? Small change."
- Put each changed item, with what it touches, in scope (with a depth note) or out of scope (with a reason and an owner).
- Write at least three questions to settle before the scope is agreed.
- Handle the day-6 request as a scope change.
Show the model answer
In scope: video booking and card payment on all platforms in both languages, high risk (slots, time zones, payment failure, double booking, refunds); our side of the video integration (starting the call, denied camera permission, the service being down); the SMS cancellation link (valid, expired and already used links; ar/en text) and the weekly view (week start and end, appointments across midnight), medium risk; and regression of in-clinic booking and existing payments, which share the code.
Out of scope, each agreed by the product owner: the video service and call quality (vendor-owned; ask for their evidence), patient records and lab results (unchanged; the existing regression suite), SMS gateway delivery (messaging team; we check only our text and link).
Questions: Which older app versions must work with the new booking API? Is a paid consultation refunded automatically when cancelled through the SMS link? Will the video vendor share test results or a sandbox?
Day 6: do not start quietly. Estimate the impact (new payment path, eligibility rules, insurer integration, refunds: roughly three to four tester-days plus payment regression) and offer the options: more time, defer to 3.2, or less depth elsewhere with the risk accepted. Ask for a story with acceptance criteria, record the decision as scope v1.1, and update the estimate and exit criteria.
Frequently asked questions
What is the difference between test scope and project scope?
Project scope is the work the project must do to deliver its product features and other outputs. Test scope is what testing covers. They overlap but are not equal: a feature can be in the release while part of it is out of test scope (a vendor component), and test scope can reach beyond what the release changes: regression of unchanged areas that depend on the change, and every supported platform.
Who decides what is out of scope?
The tester or QA lead proposes. The person who owns the release risk, usually the product owner or project manager, agrees, and the development lead and the owners of excluded components confirm who covers them. A tester does not drop items alone or accept risk on behalf of the business.
Is every scope change scope creep?
No. Change is expected, especially in agile teams; the 2020 Scrum Guide allows scope to be clarified and renegotiated with the Product Owner during the Sprint. It becomes creep when it bypasses the agreement: added without an impact assessment and without adjusting time, people or criteria.
Where do I document scope in an agile team?
In a one-page sprint or release test plan, or in the scope section of the test plan. The stories in the Sprint Backlog with their acceptance criteria are the core of the in-scope list; add the regression areas and platforms they affect, and put the exclusions on the same page with their reasons, linked from the team board.
References
- ISTQB Certified Tester Foundation Level (CTFL) v4.0The foundation syllabus of software testing: test levels and types, test design techniques, test management and tools.
- ISO/IEC/IEEE 29119-3:2021 — Software and systems engineering — Software testing — Part 3: Test documentationTemplates and content for test documentation — test policy, strategy, plan, status and completion reports, incident reports.
- The 2020 Scrum GuideThe definition of Scrum: its accountabilities, events and artifacts, including the Definition of Done that testing helps meet.
Practise with Mutqan tools
Score features by likelihood and impact, then generate a prioritised risk-based test plan.
Convert a list of numbered requirements into traceable test cases with a requirement-to-test matrix.
Generate regression scenarios from a change description and a list of affected and related modules.
Compare two texts line by line or word by word and highlight differences.
Go deeper
Your progress on this topic
Not started
Mark the topic complete when you have studied it and done the exercise.
Sign in to track your progress
Mark topics complete, continue where you left off and unlock specialisation exams.