|
Test Factoring: What Can We Test in a Very Short Time?
David Saff
In many situations, such as limited test time or resources, it is
important to test software in a way that maximizes the number of
faults discovered early in testing. Traditionally, test
prioritization has been used to attempt to place the tests most likely
to reveal faults at the beginning of a test suite. However, what if
the time allowed for testing after a change to the code is restricted
to even less than the time required to run a single test? I will
present test factoring, a method that uses existing slow tests and
information about a program change, and attempts to create fast tests
that are likely to reveal faults introduced by that change, but may
rarely produce incorrect results. I will indicate the challenges
presented by developing such a method, and an experimental framework
that can be used to validate it. I will also discuss continuous
testing, a development environment feature that can be enabled by test
factoring.
|