Abstract
Most automatic test generation research focuses on generation of test data from pre-selected program paths or input domains or program specifications. This paper presents a methodology for a full solution to code-coverage-based test case generation, which includes code coverage-based path selection, test data generation and actual test case representation in program's original languages. We implemented this method in an automatic testing framework, eXVantage. Experimental results and industrial trials show that the framework is able to generate tests to achieve program line coverage from 20% to 98% with reduced overall testing effort. Our major contributions include an innovative coverage-based program prioritization algorithm, a novel path selection algorithm that takes into consideration program priority and functional calling relationship, and a constraint solver for test data generation that derives constraints from bytecode and solves complex constraints involving strings and dynamic objects.
Original language | English |
---|---|
Pages (from-to) | 1187-1198 |
Number of pages | 12 |
Journal | Information and Software Technology |
Volume | 48 |
Issue number | 12 |
DOIs | |
State | Published - Dec 2006 |
Keywords
- Code-coverage
- Constraint solver
- Test generation