Jump to content

Test suite

From Wikipedia, the free encyclopedia

In software development, a test suite, less commonly known as a validation suite, is a collection of test cases that are intended to be used to test a software program to show that it has some specified set of behaviors.[1] A test suite often contains detailed instructions or goals for each collection of test cases and information on the system configuration to be used during testing. A group of test cases may also contain prerequisite states or steps and descriptions of the following tests.

Collections of test cases are sometimes termed a test plan, a test script, or even a test scenario.

Types

[edit]

Occasionally, test suites are used to group similar test cases together. A system might have a smoke test suite that consists only of smoke tests or a test suite for some specific functionality in the system. It may also contain all tests and signify if a test should be used as a smoke test or for some specific functionality.

In model-based testing, one distinguishes between abstract test suites, which are collections of abstract test cases derived from a high-level model of the system under test, and executable test suites, which are derived from abstract test suites by providing the concrete, lower-level details needed to execute this suite by a program.[2] An abstract test suite cannot be directly used on the actual system under test (SUT) because abstract test cases remain at a high abstraction level and lack concrete details about the SUT and its environment. An executable test suite must work on a sufficiently detailed level to correctly communicate with the SUT and a test harness is usually present to interface the executable test suite with the SUT.

A test suite for a primality testing subroutine might consist of a list of numbers and their primality (prime or composite), along with a testing subroutine. The testing subroutine would supply each number in the list to the primality tester, and verify that the result of each test is correct.

See also

[edit]

References

[edit]
  1. ^ Pinto, Leandro Sales; Sinha, Saurabh; Orso, Alessandro (11 November 2012). "Understanding myths and realities of test-suite evolution". Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering. Association for Computing Machinery. pp. 1–11. doi:10.1145/2393596.2393634. ISBN 9781450316149. S2CID 9072512.
  2. ^ Hakim Kahlouche, César Viho, and Massimo Zendri, "An Industrial Experiment in Automatic Generation of Executable Test Suites for a Cache Coherency Protocol", Proc. International Workshop on Testing of Communicating Systems (IWTCS'98), Tomsk, Russia, September 1998.