Prioritizers Zachary Williams Gregory M. Kapfhammer Department of Computer Science Allegheny College http://www.cs.allegheny.edu/ Genetic and Evolutionary Computation Conference Late Breaking Abstract Workshop July 2010 Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 1 / 11
test suites to empirically evaluate the efficiency and effectiveness of search-based and greedy prioritizers Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 2 / 11
test suites to empirically evaluate the efficiency and effectiveness of search-based and greedy prioritizers Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 2 / 11
P T P Report Complete retesting is often prohibitively expensive Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 3 / 11
Requirements necessitate the coverage of the state and/or structure of a program under test Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 4 / 11
Requirements necessitate the coverage of the state and/or structure of a program under test Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 4 / 11
T2 T1 T3 T4 T5 T6 T7 Each test covers specific requirements in a certain amount of time and thus the ordering is critical Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 4 / 11
T2 T1 T3 T4 T5 T6 T7 R3 R2 T2 R4 Each test covers specific requirements in a certain amount of time and thus the ordering is critical Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 4 / 11
T2 T1 T3 T4 T5 T6 T7 T1 T2 T3 T4 T5 T6 T7 Prioritized test suites cover requirements faster thus enabling the rapid detection of defects Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 4 / 11
T2 T1 T3 T4 T5 T6 T7 T1 T2 T3 T4 T5 T6 T7 T2 T3 T5 Prioritized test suites cover requirements faster thus enabling the rapid detection of defects Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 4 / 11
T2 T1 T3 T4 T5 T6 T7 T1 T2 T3 T4 T5 T6 T7 T2 T3 T5 T2 T3 T5 T1 T4 T6 T7 Prioritized test suites cover requirements faster thus enabling the rapid detection of defects Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 4 / 11
T2 T1 T3 T4 T5 T6 T7 T1 T2 T3 T4 T5 T6 T7 T2 T3 T5 T2 T3 T5 T1 T4 T6 T7 T6 T7 T2 T3 T5 Prioritized test suites cover requirements faster thus enabling the rapid detection of defects Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 4 / 11
T2 T1 T3 T4 T5 T6 T7 T1 T2 T3 T4 T5 T6 T7 T2 T3 T5 T2 T3 T5 T1 T4 T6 T7 T6 T7 T2 T3 T5 T6 T7 T1 T4 T6 T7 T1 T4 T1 T4 T1 T4 Testers can use greedy (Rothermel et al. TSE 2001) and search-based (Li et al. TSE 2007) methods to reorder suites Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 4 / 11
case Hill climbers search the state space for improved orderings Conventional wisdom dictates that greedy generally out performs hill climbing in terms of both efficiency and effectiveness Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 5 / 11
case Hill climbers search the state space for improved orderings Conventional wisdom dictates that greedy generally out performs hill climbing in terms of both efficiency and effectiveness Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 5 / 11
case Hill climbers search the state space for improved orderings Conventional wisdom dictates that greedy generally out performs hill climbing in terms of both efficiency and effectiveness Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 5 / 11
case Hill climbers search the state space for improved orderings Conventional wisdom dictates that greedy generally out performs hill climbing in terms of both efficiency and effectiveness Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 5 / 11
Applica- tions and Test Suites These highlighted tasks are manual, expensive, and prone to error Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 6 / 11
Applica- tions and Test Suites Produce Coverage Report These highlighted tasks are manual, expensive, and prone to error Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 6 / 11
Applica- tions and Test Suites Produce Coverage Report Conduct Experiment These highlighted tasks are manual, expensive, and prone to error Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 6 / 11
Applica- tions and Test Suites Produce Coverage Report Conduct Experiment Download Case Study Configure Applica- tions and Test Suites Produce Coverage Report These highlighted tasks are manual, expensive, and prone to error Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 6 / 11
Applica- tions and Test Suites Produce Coverage Report Conduct Experiment Generate Synthetic Test Suites Synthetically generating a test suite is automated, effective, and efficient Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 6 / 11
Applica- tions and Test Suites Produce Coverage Report Conduct Experiment Generate Synthetic Test Suites Generate Synthetic Test Suites Synthetically generating a test suite is automated, effective, and efficient Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 6 / 11
requirements governs how many requirements the test suite will cover Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 7 / 11
number of coverage points controls how many unique test-requirement pairs the test suite will contain Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 7 / 11
The balancing configuration dictates how the coverage points will be distributed in the synthetic test suite Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 7 / 11
Synthetic Test Suite Generator Our empirical results show that synthetic generation takes less then 0.2 seconds for extremely large test suites Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 7 / 11
Synthetic Test Suite Generator Synthetic Test Suite (Coverage Report) Contains information concerning the requirements covered and the execution time of each test Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 7 / 11
20 40 60 80 100 GRD HC 0.5 1 1.5 200 GRD HC 0.5 1 1.5 200 GRD HC 0.5 1 1.5 200 HC demonstrated to be more efficient then GRD for large test suites Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 8 / 11
20 40 60 80 100 GRD HC 0.5 1 1.5 200 GRD HC 0.5 1 1.5 200 GRD HC 0.5 1 1.5 200 HC demonstrated to be more efficient then GRD for large test suites Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 8 / 11
0.80 0.85 0.90 0.95 1.00 GRD HC 1.5 200 0.1 0.25 0.5 As the amount of coverage points in the test suite increases the performance of HC becomes comparable to that of GRD Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 9 / 11
0.80 0.85 0.90 0.95 1.00 GRD HC 1.5 200 0.1 0.25 0.5 As the amount of coverage points in the test suite increases the performance of HC becomes comparable to that of GRD Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 9 / 11
efficient Enable the identification of fundemental trade-offs Future Work Apply our technique to genetic and other algorithms Implement and evaluate new and different synthetic generators http://www.cs.allegheny.edu/~gkapfham/research/kanonizo/ Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 11 / 11
efficient Enable the identification of fundemental trade-offs Future Work Apply our technique to genetic and other algorithms Implement and evaluate new and different synthetic generators http://www.cs.allegheny.edu/~gkapfham/research/kanonizo/ Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 11 / 11
efficient Enable the identification of fundemental trade-offs Future Work Apply our technique to genetic and other algorithms Implement and evaluate new and different synthetic generators http://www.cs.allegheny.edu/~gkapfham/research/kanonizo/ Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 11 / 11
efficient Enable the identification of fundemental trade-offs Future Work Apply our technique to genetic and other algorithms Implement and evaluate new and different synthetic generators http://www.cs.allegheny.edu/~gkapfham/research/kanonizo/ Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 11 / 11
efficient Enable the identification of fundemental trade-offs Future Work Apply our technique to genetic and other algorithms Implement and evaluate new and different synthetic generators http://www.cs.allegheny.edu/~gkapfham/research/kanonizo/ Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 11 / 11
efficient Enable the identification of fundemental trade-offs Future Work Apply our technique to genetic and other algorithms Implement and evaluate new and different synthetic generators http://www.cs.allegheny.edu/~gkapfham/research/kanonizo/ Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 11 / 11
efficient Enable the identification of fundemental trade-offs Future Work Apply our technique to genetic and other algorithms Implement and evaluate new and different synthetic generators http://www.cs.allegheny.edu/~gkapfham/research/kanonizo/ Zachary Williams (Allegheny College) Synthetic Test Suite Prioritization GECCO 2010 11 / 11