of Regression Testing Techniques Jonathan Miller Kauffman and Gregory M. Kapfhammer Department of Computer Science Allegheny College Testing: Academic & Industrial Conference – Practice and Research Techniques Montr´ eal, Qu´ ebec, Canada April 21, 2012
Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Developers may introduce faults when adding new functionality Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Run a regression test suite to detect these faults Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Need ways to manage regression test suites as they grow in size Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Regression Testing Technique Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Regression Testing Technique What if Some Test Cases are More Effective? T3 Tn Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Regression Testing Technique What if Some Test Cases are More Effective? T3 Tn Prioritization T3 Tn T1 T4 . . . T2 Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Regression Testing Technique What if Some Test Cases are More Effective? T3 Tn Prioritization T3 Tn T1 T4 . . . T2 T1 T2 T3 T4 . . . Tn Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Regression Testing Technique T3 Tn Prioritization T3 Tn T1 T4 . . . T2 T1 T2 T3 T4 . . . Tn What if Some Test Cases are Redundant? T1 T2 T3 T4 . . . Tn Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Regression Testing Technique T3 Tn Prioritization T3 Tn T1 T4 . . . T2 T1 T2 T3 T4 . . . Tn What if Some Test Cases are Redundant? T1 T2 T3 T4 . . . Tn Reduction T4 Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
artifacts Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
artifacts Insufficient number of trials and inappropriate statistical analyses Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
artifacts Insufficient number of trials and inappropriate statistical analyses Practice Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
artifacts Insufficient number of trials and inappropriate statistical analyses Practice Unwilling to adopt techniques due to lack of empirical studies Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
artifacts Insufficient number of trials and inappropriate statistical analyses Practice Unwilling to adopt techniques due to lack of empirical studies Techniques must be usable with minimal configuration Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
artifacts Insufficient number of trials and inappropriate statistical analyses Practice Unwilling to adopt techniques due to lack of empirical studies Techniques must be usable with minimal configuration Address challenges by releasing two open-source tools Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
in the Java programming language Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
test suite that exercizes program P Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Coverage Monitoring Controls test case execution and coverage monitoring Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Coverage Monitoring Coverage Report Identifies the program entities executed by each test case Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Coverage Monitoring Coverage Report Coverage criteria: Statement, method, and class Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Coverage Monitoring Coverage Report T Run test suite according to a reduction or prioritization Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Random, Adap- tive Random, Simulated Annealing, Genetic Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
information produced by Proteja Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Controls the execution of the reduction and prioritization algorithms Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Data Sets Visualized and statistically analyzed to identify trends Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Data Sets T Description of the reduced or prioritized test suite Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Cobertura Coverage Report Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Cobertura Coverage Report Reduction Prioritization T Data Set Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Cobertura Coverage Report Reduction Prioritization T Data Set Experimentation Visualization Analysis Visualization and analysis used to identify trends Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Cobertura Coverage Report Reduction Prioritization T Data Set Experimentation Visualization Analysis T executed using Proteja Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Cobertura Coverage Report Reduction Prioritization T Data Set Experimentation Visualization Analysis Use any tool that produces data in the correct format Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Cobertura Coverage Report Reduction Prioritization T Data Set Experimentation Visualization Analysis However, greatest benefits realized when tools used together Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
0.3265 10 20 30 JodaTime (JT) Statement Original NAPSC Score: 0.2784 Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
0.3265 10 20 30 JodaTime (JT) Statement Negligible NAPSC increase as population size increases Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
20 30 JodaTime (JT) Statement Increases in runtime are more marked Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Jaccard Manhattan JodaTime (JT) Statement Original NAPSC Score: 0.2784 Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Jaccard Manhattan JodaTime (JT) Statement NAPSC changes little as similarity metric is varied Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Jaccard Manhattan JodaTime (JT) Statement Scores are comparable to those produced by random (0.3240 - 0.3265) Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
120 Euclidean Jaccard Manhattan JodaTime (JT) Statement Adaptive random executes more slowly than random Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
120 Euclidean Jaccard Manhattan JodaTime (JT) Statement Choose random because it produces comparable NAPSC scores in less time Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Download Proteja and Modificare Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Download Proteja and Modificare Proteja: http://proteja.googlecode.com Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Download Proteja and Modificare Modificare: http://modificare.googlecode.com Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Download Proteja and Modificare Contribute new features and bug fixes Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Download Proteja and Modificare Contribute new features and bug fixes All contributions will be recognized Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Download Proteja and Modificare Contribute new features and bug fixes Perform empirical studies Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Download Proteja and Modificare Contribute new features and bug fixes Perform empirical studies Study more algorithms or configurations of individual algorithms Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Download Proteja and Modificare Contribute new features and bug fixes Perform empirical studies Share indus- try experi- ence reports Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Download Proteja and Modificare Contribute new features and bug fixes Perform empirical studies Share indus- try experi- ence reports How well do these tools work in practice? Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
http://proteja.googlecode.com Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
http://proteja.googlecode.com Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
http://proteja.googlecode.com Test Suite Manage- ment & Experimentation Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
http://proteja.googlecode.com Test Suite Manage- ment & Experimentation http://modificare.googlecode.com Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
http://proteja.googlecode.com Test Suite Manage- ment & Experimentation http://modificare.googlecode.com Choose algorithm based on efficiency instead of effectiveness Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques
http://proteja.googlecode.com Test Suite Manage- ment & Experimentation http://modificare.googlecode.com Choose algorithm based on efficiency instead of effectiveness Extend and enhance tools and perform additional empirical studies Jonathan Miller Kauffman and Gregory M. Kapfhammer Allegheny College A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques