International Journal of Advances in Engineering & Technology, May 2011.
©IJAET ISSN: 2231-1963
188 Vol. 1,Issue 2,pp.188-193
COVERAGE BASED TEST SUITE AUGMENTATION
TECHNIQUES-A SURVEY
Bharti Suri
1
, Prabhneet Nayyar
2
1
Assistant Professor, USIT
Guru Gobind Singh Indraprastha University, Delhi, INDIA
bhartisuri@gmail.com
2
M.Tech, USIT
Guru Gobind Singh Indraprastha University, Delhi, INDIA
prabhneetnayyar@gmail.com
ABSTRACT
Regression testing is the activity of retesting a program so as to ensure that no new errors have been
introduced into the previously tested code. However this activity does not involve rerunning the entire
test suite but selecting only a few test cases that exercise the changes. Suppose there is a program P
and P’ is it’s modified version. The regression test suite so selected must be able to reveal the
differences between P and P’ that would help the developer discover errors caused by changes. More
and more emphasis has been laid in identifying the regression test suites and ordering them.
However, less focus have been laid on the effectiveness of regression test suite in response to changes.
While performing regression testing we also need to check whether the existing test suites are
sufficient for handling the changes that are introduced. If they are not adequate then providing
guidance for creating the new test cases that would be targeting the changed behavior of the
program. This problem is called as test suite augmentation. Many test suite augmentation techniques
have been proposed in this regard. The main aim of this paper is to explain the concept of test suite
augmentation and review the existing techniques based on coverage criteria.
KEYWORDS: Test Suite Augmentation, Matrix, Directed Test Suite Augmentation
1. INTRODUCTION
One of the fundamental activities during software evolution is regression testing. Regression testing
[4] is the testing of the modified software to ensure that the changed parts of the software behave as it
is intended to behave and to ensure that no new errors have been introduced as a result of these
changes. This activity however does not involve rerunning the entire suite but selecting a subset of it
that exercise the changes. More and more emphasis has been laid on majorly three activities namely:
regression test selection, test suite reduction and test suite prioritization. Regression test selection
basically identifies test cases that we do not need to rerun on the modified version of the software.
Test suite reduction on the other hand takes criteria into consideration and accordingly eliminates
redundant test cases in a test suite. Test suite prioritization [19] [20] is a concept related to finding the
defects earlier by ordering test cases in a test suite. However little attention have been paid to
determining whether the existing test suite adequately exercises the modified software and if not
providing a suitable guidance for creating new test cases for the same. This problem is called as test
suite augmentation problem. This research is divided into four sections. The first section describes
about test suite augmentation. In the next section the techniques proposed for solving the test suite
augmentation problem and mainly focuses on identifying the affected portions[2][3][4][12] .In the
next section other techniques for test suite augmentation that mainly focuses on test case
generation[24][25] along with augmentation algorithm [13] are discussed. A comparative analysis is
also obtained after the techniques have been reviewed.