unit-testingtestingregression-testing

Regression test in a ISTQB test exam


This is the problem statement:


You are testing a user story with three acceptance criteria: AC1, AC2 and AC3. AC1 is covered by test case TC1, AC2 by TC2, and AC3 by TC3. The test execution history had three test runs on three consecutive versions of the software as follows:

Execution 1
TC1 (1) Failed
TC2 (2) Passed
TC3 (3) Failed
Execution 2 Execution 3
(4) Passed (7) Passed
(5) Failed (8) Passed
(6) Failed (9) Passed

Tests are repeated once you are informed that all defects found in the test run are corrected and a new version of the software is available. Which of the above tests are executed as regression tests? a) Only 4, 7, 8, 9 b) Only 5, 7 c) Only 4, 6, 8, 9 d) Only 5, 6 Select ONE option


The correct answer is supposedly B but I don't understand why. In my opinion, all the tests that have passed in the latest version should be executed (7, 8 and 9). Can someone explain to me?

I have tried to think about what tests are necessary to ensure that the regression is covered. I don't see the point in the answer marked as correct, since it executes tests that are not from the last execution.


Solution

  • Take this with a grain of salt since I'm studying myself for ISTQB right now. Comments with improvements are welcome. I assume they want to know in which cases you are 100% sure it must have been a regression test.

    Summarized, a regression test is to make sure something didn't break based on a change somewhere else in a system. Confirmation testing is testing where you recheck if something broken is now fixed.

    So it must have been 5 and 7 since they are the only ones where you are sure that they retested something that was already working.