ISTQB Foundation study materials
ISTQB Foundation study resources

ISTQB Foundation practice questions

One question at a time. Build your ISTQB Foundation understanding.

First 50 of 200 questions. Each one lists the choices, the correct answer, and an explanation. The checker at the top of this page saves progress in this browser when it is available.

Continue in the practice tool above to load more questions, 50 at a time.

Question 1Fundamentals of Testing

Which statement best describes software testing according to ISTQB?

  1. A single phase performed only after all coding work has been completed
  2. A set of activities that finds defects and evaluates product quality Correct answer.
  3. A technique for proving that a program contains no remaining defects
  4. The process of removing defects from source code before it is compiled

Explanation

Testing is a set of activities concerned with discovering defects and evaluating the quality of work products; it includes both static and dynamic techniques and spans the whole lifecycle. It is neither a single late phase nor a proof of correctness.

Question 2Fundamentals of Testing

Which of the following is a typical objective of testing?

  1. Causing failures and finding defects in the test object Correct answer.
  2. Removing the root cause of every incident found in production
  3. Demonstrating that no defects remain in the product
  4. Guaranteeing that the software will be reliable in production

Explanation

Typical test objectives include causing failures and finding defects, as well as providing information about quality and giving confidence in the test object. Testing reduces risk but can never demonstrate complete absence of defects or give guarantees.

Question 3Fundamentals of Testing

A developer types the wrong operator into a calculation. Which term describes this human mistake?

  1. A failure, because the user receives an incorrect result
  2. A defect, because the source code contains a fault
  3. An error, because a person made a mistake Correct answer.
  4. A root cause, because it explains the whole incident

Explanation

A human action that produces an incorrect result is an error. An error may introduce a defect into a work product, and that defect may cause a failure when the code is executed.

Question 4Fundamentals of Testing

What is meant by the root cause of a defect?

  1. The test case that exposed the defect during execution
  2. The incident report written after the failure was observed
  3. The fundamental reason why a defect was introduced Correct answer.
  4. The difference between the actual and the expected results

Explanation

The root cause is the fundamental reason why a defect was introduced, and identifying it helps prevent similar defects in the future. The failure is the observed deviation from expected behaviour, which is a symptom rather than the cause.

Question 5Fundamentals of Testing

Which testing principle explains why testing can show that defects are present but can never prove that there are none?

  1. Tests must be reviewed and revised regularly
  2. Testing shows the presence of defects, not their absence Correct answer.
  3. Exhaustive testing is impossible in every project
  4. Defects tend to cluster in a small number of modules

Explanation

This principle states that testing reduces the likelihood of undetected defects remaining, but even a test run that finds nothing cannot prove the software is correct. It is the reason testing is described as a risk-reduction activity rather than a proof.

Question 6Fundamentals of Testing

Repeating the same set of regression tests over many releases gradually stops revealing new defects. Which principle does this illustrate?

  1. Testing is context dependent
  2. The pesticide paradox Correct answer.
  3. Early testing saves time and money
  4. Defect clustering in risky modules

Explanation

The pesticide paradox states that if the same tests are repeated over and over, they eventually stop finding new defects. Test cases and test data therefore need to be reviewed and updated regularly to remain effective.

Question 7Fundamentals of Testing

Which group usually provides the highest level of independence from the author of the code under test?

  1. Testers from an external organisation Correct answer.
  2. The business analyst of the same project
  3. A developer from the same team
  4. The developer who wrote the code

Explanation

Independence increases as testers move away from the author: from the author, to peers in the same team, to testers outside the team, and finally to testers outside the organisation. External testers are therefore the most independent, although they may give slower feedback.

Question 8Fundamentals of Testing

Checking that a work product meets the requirements specified for it is an example of which activity?

  1. Verification, because it checks conformance to requirements Correct answer.
  2. Validation, because it checks that the user's needs are satisfied
  3. Confirmation testing, because it re-tests a corrected defect
  4. Regression testing, because it re-executes earlier test cases

Explanation

Verification checks that work products conform to the requirements specified for them, often described as building the product right. Validation instead checks that the product fulfils the intended use and user needs.

Question 9Fundamentals of Testing

A project team finds that 60% of all defects come from two of its thirty modules. Which principle should guide where to focus test effort?

  1. Exhaustive testing is impossible for large systems
  2. Defect clustering, so effort should follow risk Correct answer.
  3. The pesticide paradox requires new test cases
  4. Testing should start early in the lifecycle

Explanation

The defect clustering principle states that a small number of modules usually contain most of the defects. Test effort should therefore be prioritised according to risk and defect concentration rather than spread evenly.

Question 10Fundamentals of Testing

A team plans to test every possible combination of inputs for a simple form. Which principle tells them this plan is unrealistic and that risk-based prioritisation should be used instead?

  1. Exhaustive testing is impossible Correct answer.
  2. Absence of errors is a fallacy
  3. Testing is context dependent
  4. Defects cluster together in a few components

Explanation

Exhaustive testing of all input and precondition combinations is impossible except in trivial cases. Risk analysis, prioritisation and coverage-based techniques must therefore be used to select a feasible set of tests.

Question 11Fundamentals of Testing

Which test process activity identifies and prioritises test conditions based on the test basis?

  1. Test monitoring, which tracks progress against the plan
  2. Test analysis, which determines what should be tested Correct answer.
  3. Test design, which specifies how the conditions will be covered
  4. Test execution, which compares actual and expected results

Explanation

Test analysis analyses the test basis to identify test conditions, answering the question of what should be tested, and prioritises them. Test design follows and determines how those conditions will be covered by test cases and test data.

Question 12Fundamentals of Testing

Which of the following is a typical work product of the test design activity?

  1. An incident report describing unexpected behaviour
  2. A test completion report summarising results
  3. A test plan describing the schedule and resources
  4. Test cases and sets of expected results Correct answer.

Explanation

Test design produces test cases, sets of expected results, test data requirements and, where relevant, test charters and coverage items. These form part of the testware that supports later execution and reporting.

Question 13Fundamentals of Testing

Which test level focuses on interactions and interfaces between components of a system?

  1. Acceptance testing by business users
  2. System testing against end-to-end requirements
  3. Component testing of individual units
  4. Integration testing Correct answer.

Explanation

Integration testing focuses on interactions and interfaces between components or systems, which is where defects in communication and data exchange tend to appear. Component testing, by contrast, tests components in isolation.

Question 14Fundamentals of Testing

Business users run realistic tasks on a completed system to decide whether it should be released for use. Which type of acceptance testing does this describe?

  1. Contractual acceptance testing against a contract
  2. User acceptance testing Correct answer.
  3. Regulatory acceptance testing of legal requirements
  4. Operational acceptance testing of backup and recovery

Explanation

User acceptance testing is performed by the intended users in a realistic environment to confirm that the system supports their business needs and is acceptable for release. The other acceptance types address operational, contractual and regulatory concerns.

Question 15Fundamentals of Testing

After a defect is fixed, which type of testing checks that the fix has actually resolved the problem?

  1. Regression testing that re-runs existing test cases
  2. Non-functional testing of performance
  3. Smoke testing of the main build functionality
  4. Confirmation testing of the corrected defect Correct answer.

Explanation

Confirmation testing, also called re-testing, executes the test that originally failed to check that the specific defect has been resolved. Regression testing is then used to check that the change has not broken other parts of the system.

Question 16Fundamentals of Testing

Which test type derives test conditions from the internal structure of the test object?

  1. White-box testing of the code structure Correct answer.
  2. Functional testing based on specified behaviour
  3. Non-functional testing of quality characteristics
  4. Change-related testing of modifications

Explanation

White-box testing derives test conditions from the internal structure, such as code, architecture, design or data flow. Black-box testing, by contrast, derives them from specifications and other external descriptions of behaviour.

Question 17Fundamentals of Testing

A team measures the response time and CPU usage of a new web application during load. Which test type are they performing?

  1. Component integration testing
  2. Functional testing
  3. Non-functional testing Correct answer.
  4. Regression testing

Explanation

Response time and CPU usage are quality characteristics, so measuring them is non-functional testing. Non-functional testing evaluates how well the system behaves rather than whether it implements the required functions correctly.

Question 18Fundamentals of Testing

What does the shift-left approach recommend?

  1. Reducing the number of test levels in a project
  2. Replacing all manual testing with automated scripts
  3. Moving test execution to a dedicated team after release
  4. Starting testing activities earlier in the lifecycle Correct answer.

Explanation

Shift left means performing testing activities earlier, for example reviewing requirements and designing tests before code exists, so that defects are found when they are cheaper to fix. It complements later testing rather than replacing it.

Question 19Fundamentals of Testing

Which statement about the V-model is correct?

  1. It requires all testing to be automated within a continuous pipeline
  2. It pairs each development phase with a corresponding test level Correct answer.
  3. It treats testing as a single phase performed after system design
  4. It allows each test level to be executed before the corresponding development phase

Explanation

In the V-model each development phase, such as requirements or design, corresponds to a test level, and test planning for a level starts in parallel with the matching development phase. The tests themselves are executed after the corresponding development work is complete.

Question 20Fundamentals of Testing

Which practice is most characteristic of an agile approach to testing?

  1. Handing testing over to a separate independent department
  2. Executing system tests only after all coding has finished
  3. Preparing a detailed test plan once, at the start of the project
  4. Testing continuously within each iteration by the whole team Correct answer.

Explanation

Agile approaches favour continuous testing within each iteration, with the whole team involved and fast feedback from developers, testers and business representatives. Documentation and planning are kept lean and are revisited as understanding grows.

Question 21Fundamentals of Testing

What is the main benefit of establishing traceability between the test basis and the testware?

  1. It eliminates the need for regression testing after a change
  2. It supports impact analysis and coverage measurement Correct answer.
  3. It removes the need to review test cases before execution
  4. It guarantees that no defects will escape to production

Explanation

Traceability links testware to the requirements and other sources it was derived from, which allows coverage to be measured and supports impact analysis when requirements change. It also helps report on the status of testing and on the coverage of risks.

Question 22Fundamentals of Testing

A team finds and fixes every defect reported in testing, yet users still find the system unusable for their work. Which principle does this illustrate?

  1. The pesticide paradox
  2. Defect clustering
  3. Exhaustive testing is impossible
  4. The absence-of-errors fallacy Correct answer.

Explanation

The absence-of-errors fallacy states that finding and fixing defects does not help if the system does not fulfil users' needs and expectations. Validation against the intended use is therefore essential alongside defect removal.

Question 23Fundamentals of Testing

A safety-critical medical device and a public marketing website are tested with very different levels of rigour, documentation and formality. Which testing principle does this reflect?

  1. Testing shows the presence of defects, not their absence
  2. Defects cluster in a small number of modules
  3. Early testing saves time and money
  4. Testing is context dependent Correct answer.

Explanation

Testing is context dependent: the approach, degree of rigour and level of documentation must match the domain, the risks and any regulatory requirements of the product. A medical device and a marketing site therefore warrant very different testing.

Question 24Fundamentals of Testing

Why does a DevOps approach typically improve the feedback that testers receive?

  1. It schedules testing as a single phase before deployment
  2. It automates build, test and deployment in pipelines Correct answer.
  3. It shifts all testing responsibility to operations engineers
  4. It removes the need for any manual testing before release

Explanation

DevOps relies on automated build, test and deployment pipelines with continuous integration and delivery. This gives rapid feedback on every change and lets the team correct problems quickly, while testing remains a whole-team responsibility.

Question 25Fundamentals of Testing

Which set of activities belongs primarily to the test manager role rather than the tester role?

  1. Analysing the test basis and designing test cases
  2. Planning, monitoring and controlling test activities Correct answer.
  3. Executing tests and reporting incidents
  4. Evaluating work products through technical reviews

Explanation

The test manager is accountable for planning, monitoring, controlling and completing test activities, including resources, schedules and reporting. Testers concentrate on the technical work of analysis, design, execution and evaluation.

Question 26Fundamentals of Testing

During a code review, a developer's statement is found to use 'less than' where 'less than or equal to' was intended. The incorrect statement in the code is best described as which of the following?

  1. A test condition
  2. A failure
  3. A defect Correct answer.
  4. An error

Explanation

In testing terminology the human mistake is the error, the flawed item left in a work product is the defect (fault), and the observable deviation in behaviour when that defect is executed is the failure. The incorrect statement sitting in the code is therefore a defect. Failures appear only when the defect is executed under the right conditions.

Question 27Fundamentals of Testing

Which statement best distinguishes testing from debugging?

  1. Testing is static; debugging is dynamic
  2. Both terms describe the same activity performed by different roles
  3. Testing proves correctness; debugging proves incorrectness
  4. Testing finds failures; debugging finds and fixes their causes Correct answer.

Explanation

Testing is a structured activity that reveals failures and provides information about quality, whereas debugging is the development activity that locates the cause of a failure, fixes it and checks the fix. The two are complementary but have different objectives and often different owners. Neither activity can prove that software is correct.

Question 28Fundamentals of Testing

Which of the following is a recognised test objective?

  1. Gaining confidence in the quality of the test object Correct answer.
  2. Showing that the developers made no mistakes
  3. Replacing acceptance testing with automated checks
  4. Proving that the software contains no defects whatsoever

Explanation

Typical test objectives include finding defects, evaluating work products, providing information to decision makers and gaining confidence in the quality of the test object. Testing can never demonstrate the complete absence of defects, and it is not a means of assigning blame. Automation supports testing but does not remove the need for acceptance testing.

Question 29Fundamentals of Testing

A tester reads the requirements specification and lists the individual features and conditions that need to be covered, but has not yet decided how to test them. Which test process activity is being carried out?

  1. Test analysis Correct answer.
  2. Test execution
  3. Test design
  4. Test implementation

Explanation

Test analysis uses the test basis to identify and prioritise test conditions, that is, what is to be tested, without yet deciding how. Test design then elaborates those conditions into test cases and other testware. Implementation organises and prioritises the testware and execution runs it.

Question 30Fundamentals of Testing

A project schedules reviews of the requirements and design documents in its first two weeks, before any code is written. Which testing principle does this best illustrate?

  1. Defects cluster together in a few modules
  2. Early testing saves time and money Correct answer.
  3. Repeating the same tests stops finding new defects
  4. Exhaustive testing is impossible

Explanation

The principle of early testing states that testing activities should start as early as possible in the lifecycle, including static testing of documents. Defects found in requirements or design are far cheaper to correct than the same defects found later. The other options concern coverage limits, defect distribution and the pesticide paradox.

Question 31Fundamentals of Testing

A tester designs test cases using only the requirements specification and the user interface, without examining the source code. Which term best describes this approach?

  1. Black-box testing Correct answer.
  2. Structural testing
  3. White-box testing
  4. Static analysis

Explanation

Black-box (specification-based) testing derives test conditions from documented requirements and observable behaviour, without reference to the internal structure of the test object. White-box and structural testing instead use the internal structure. Static analysis examines code or documents without executing them, which is not what is described.

Question 32Fundamentals of Testing

Which of the following is the best example of an exit criterion for a test level?

  1. Test cases have been designed by two testers
  2. No critical defects remain open Correct answer.
  3. The test plan has been approved by the project manager
  4. The test environment has been booked for four weeks

Explanation

Exit criteria define what must be achieved for a test level or activity to be considered complete, such as defect resolution levels, coverage thresholds or test case pass rates. Having no open critical defects is a measurable completion condition. Booking an environment, designing cases and approving a plan are preconditions or progress states rather than completion criteria.

Question 33Fundamentals of Testing

A payroll system has been in production for six years. The tax calculation module is modified for new legislation. In addition to testing the change itself, what should maintenance testing include?

  1. Only a re-run of the acceptance tests performed before the first release
  2. Only testing of the new tax rules, since the rest of the system is unchanged
  3. Regression testing of unchanged areas guided by impact analysis Correct answer.
  4. Testing of the user interface only, because the change is internal

Explanation

Maintenance testing covers both the changes made and the parts that could be affected by them, which are identified through impact analysis. Because changed code can break untouched functionality, regression testing of unchanged areas is essential. The scope is therefore wider than the change itself and wider than the original acceptance tests.

Question 34Fundamentals of Testing

During test execution, a test manager sees that most planned test cases have been run, but a quarter of them are blocked by an unstable test environment and the defect detection rate has dropped sharply. What is the most appropriate control action?

  1. Declare the exit criteria met because the majority of the planned test cases have already been executed
  2. Add extra test cases to raise coverage before the release date
  3. Escalate the environment issue and re-plan the remaining execution Correct answer.
  4. Stop all testing until the next planned release

Explanation

Test monitoring compares actual progress with the plan, and test control takes corrective action when deviations are found. Blocked tests mean the reported execution count overstates real coverage, so the environment problem must be resolved and the remaining work re-planned. Declaring completion or adding more cases would not address the blockage.

Question 35Testing Throughout the Software Development Lifecycle

Which statement describes a characteristic of the waterfall model?

  1. A phase begins only after the previous phase is complete Correct answer.
  2. Working software is delivered in short, repeated iterations
  3. Acceptance tests are written before any code is produced
  4. Testing is carried out continuously, in every phase

Explanation

In a sequential (waterfall) lifecycle the phases are carried out one after another, and a phase is entered only when the objectives of the preceding phase have been met, with testing usually treated as a distinct phase after coding. Incremental delivery, early test writing and continuous testing are features of iterative or agile lifecycles.

Question 36Testing Throughout the Software Development Lifecycle

What is the defining feature of the V-model?

  1. Test execution begins as soon as the first lines of code are written
  2. Each development phase has a corresponding test level planned alongside it Correct answer.
  3. Each increment is fully tested before the next increment starts
  4. Testing is performed by an independent team once the whole system is built

Explanation

The V-model keeps the sequential phases but pairs each development phase with the test level that verifies its output, for example requirements with system testing and detailed design with component testing, so test planning starts early. Incremental delivery and immediate test execution belong to other lifecycle models.

Question 37Testing Throughout the Software Development Lifecycle

Which of the following is an example of validation?

  1. Running static analysis tools over the source code to find coding defects
  2. Reviewing the requirements specification for consistency and completeness
  3. Checking that the code conforms to the agreed coding standards and naming rules
  4. Having end users confirm that the system supports their business processes Correct answer.

Explanation

Validation asks whether the product meets the users' needs and expectations, and is typically demonstrated through acceptance testing with real users. Reviews, coding standard checks and static analysis are verification activities that compare work products against their specified requirements.

Question 38Testing Throughout the Software Development Lifecycle

Which type of testing is performed after a defect is fixed to establish that the fix has resolved the reported problem?

  1. Confirmation testing Correct answer.
  2. Maintainability testing
  3. Regression testing
  4. Operational acceptance testing

Explanation

Confirmation testing, also called re-testing, checks that a specific defect has been fixed and that the previously failing test now passes. Regression testing is broader and searches for unintended side effects of the change elsewhere in the system.

Question 39Testing Throughout the Software Development Lifecycle

At which test level are the interfaces and interactions between components or systems the main focus?

  1. Component testing
  2. Integration testing Correct answer.
  3. Acceptance testing
  4. System testing

Explanation

Integration testing focuses on the interfaces and interactions between components or between separate systems. Component testing examines single components in isolation, while system and acceptance testing take the complete product as the object of testing.

Question 40Testing Throughout the Software Development Lifecycle

Operational acceptance testing is mainly concerned with which aspect of a system?

  1. Verifying that each of the defined business processes is fully supported by the system
  2. Confirming that the system can be run and maintained in its production environment Correct answer.
  3. Obtaining sign-off against a contractually agreed specification
  4. Checking that the system complies with a government regulation

Explanation

Operational acceptance testing is carried out by operations staff or administrators to confirm that the system can be operated, backed up, recovered and maintained in production. Business process support, contractual sign-off and legal compliance belong to user, contractual and regulatory acceptance testing.

Question 41Testing Throughout the Software Development Lifecycle

End-to-end behaviour and the non-functional characteristics of a complete system are typically evaluated at which test level?

  1. System testing Correct answer.
  2. Integration testing
  3. Component testing
  4. Acceptance testing

Explanation

System testing evaluates the behaviour of the whole system end to end, including non-functional characteristics such as performance and reliability, usually against the requirements specification. Component and integration testing deal with parts of the system rather than the complete product.

Question 42Testing Throughout the Software Development Lifecycle

In an incremental development model, what is normally produced at the end of each increment?

  1. A working part of the product that can be demonstrated and evaluated Correct answer.
  2. A complete and formally approved specification of all the requirements
  3. A set of architectural design documents for later coding
  4. A fully tested product that is ready for release

Explanation

Incremental development builds the product in portions, and each increment produces a working part that can be demonstrated, tested and sometimes delivered to users. Complete specifications and design documents are produced up front in sequential lifecycles, and a release-ready product is the result of the final increment only.

Question 43Testing Throughout the Software Development Lifecycle

What does applying the 'shift left' principle mainly involve?

  1. Transferring responsibility for all testing to business users
  2. Performing testing activities earlier in the software lifecycle Correct answer.
  3. Moving the test team physically closer to the development team
  4. Postponing test execution until the design has been fully completed and approved

Explanation

Shifting left means carrying out testing activities such as reviews, static analysis and test design as early as possible, instead of waiting for a test phase at the end of the project. Early testing reduces the cost of fixing defects and supports prevention rather than detection.

Question 44Testing Throughout the Software Development Lifecycle

In test-driven development, what is the first activity for each new piece of functionality?

  1. Run the full regression suite to establish a baseline before coding
  2. Refactor the production code to remove any duplication that has been introduced
  3. Write the production code first and afterwards write tests that cover it
  4. Write a test that fails because the functionality does not exist yet Correct answer.

Explanation

TDD follows a repeated cycle: write a test that fails, write just enough code to make it pass, then refactor the code while keeping all tests passing. Production code is therefore never written before a failing test exists.

Question 45Testing Throughout the Software Development Lifecycle

In behaviour-driven development, in which form are acceptance criteria usually expressed?

  1. As a set of code coverage targets agreed with the developers
  2. As Given/When/Then scenarios written in business-readable language Correct answer.
  3. As a list of entry and exit criteria for each test level
  4. As a decision table listing every combination of input values and expected outputs

Explanation

BDD expresses acceptance criteria as scenarios using Given (the context), When (the action) and Then (the expected outcome), phrased so that business stakeholders can read and confirm them. Decision tables are a black-box design technique and coverage targets are a measure rather than a way of expressing criteria.

Question 46Testing Throughout the Software Development Lifecycle

Which of the following is a typical entry criterion for starting system testing?

  1. The required level of statement coverage has been achieved
  2. The residual risk is low enough for the product to be released
  3. All defects found at earlier test levels have been closed
  4. The test environment and the required test data are available Correct answer.

Explanation

Entry criteria state what must be in place before a test level can begin, such as available testware, a ready test environment and test data, and predecessor defects that have been resolved. Closing all defects, achieving coverage targets and accepting residual risk relate to exit criteria or to release decisions.

Question 47Testing Throughout the Software Development Lifecycle

Which statement about regression testing in an iterative project is correct?

  1. The suite tends to grow with each increment and is normally run with automated tools Correct answer.
  2. It is performed only when the requirements have changed in a new increment
  3. It is only needed once, before the product is released to customers
  4. It is replaced by confirmation testing once the first increment is complete

Explanation

Every new increment can disturb functionality that already worked, so regression tests are added and re-run frequently, which is only practical with a growing, automated suite. Regression testing is a continuous activity and cannot be replaced by confirmation testing, which only checks that a fix worked.

Question 48Testing Throughout the Software Development Lifecycle

Which statement best describes testing in an agile development approach?

  1. Testing is carried out only by an independent team at the end of the project
  2. Testing follows a documented test plan that is fixed at the start of the project
  3. Testing is integrated into every iteration rather than confined to a separate phase Correct answer.
  4. Testing is limited to automated unit tests written by the developers

Explanation

In agile development testing is continuous and embedded in each iteration, with testers working alongside developers and business representatives. A fixed up-front plan and testing restricted to an independent team at project end belong to sequential lifecycles.

Question 49Testing Throughout the Software Development Lifecycle

In the V-model, which work product does system testing primarily verify?

  1. The code coverage achieved by the component tests
  2. The architecture and interfaces between the subsystems
  3. The specified functional and non-functional requirements Correct answer.
  4. The detailed design of the individual components

Explanation

In the V-model each test level is paired with the development phase whose output it checks: the requirements specification is verified by system testing, the architecture by integration testing and the detailed design by component testing. Coverage figures are measurements, not a work product to be verified.

Question 50Testing Throughout the Software Development Lifecycle

Which of the following is normally the test basis for component testing?

  1. The detailed design and the component's specifications Correct answer.
  2. The acceptance criteria agreed with the customer
  3. The user requirements specification and business process models
  4. The system architecture and interface specifications

Explanation

Component testing is based on the detailed design and component specifications and is usually performed by the developers who wrote the code. Requirements and business process models underpin system and acceptance testing, while architecture and interfaces are the basis for integration testing.