This approach often leads to a large number of test cases being selected and rerun even for small changes to the original program, leading to unnecessarily high regression testing costs.
We also discuss issues that arise while designing RTS techniques for embedded programs, and identify the emerging trends in regression testing.
This paper is organized as follows: Section 2 presents basic concepts related to regression testing and which have been used in the rest of this paper.
In this section, we first discuss a few basic concepts that are extensively used in the context of regression testing.
In this section, we discuss a few important notations and concepts relevant to regression testing.
In some companies, all existing test cases are rerun in regression testing.
Even though regression testing is generally useful for software development and maintenance, it is especially useful for companies with one or more of the following characteristics:
Companies maintaining large programs over extended periods of time, such as 20 years, because regression testing can be used as a sanity check;
Test case selection: Test cases must be selected to run regression testing.
Fault identification can be a difficult problem if there are many modules with multiple versions and many modifications submitted for regression testing.