Axiomatizing software test data adequacy
IEEE Transactions on Software Engineering
Software unit test coverage and adequacy
ACM Computing Surveys (CSUR)
Testing object-oriented systems: models, patterns, and tools
Testing object-oriented systems: models, patterns, and tools
Dynamically Discovering Likely Program Invariants to Support Program Evolution
IEEE Transactions on Software Engineering - Special issue on 1999 international conference on software engineering
Regression test selection for Java software
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Incremental Regression Testing
ICSM '93 Proceedings of the Conference on Software Maintenance
Chianti: a tool for change impact analysis of java programs
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Working Effectively with Legacy Code
Working Effectively with Legacy Code
Empirical Software Engineering
Automatic test factoring for java
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
From daikon to agitator: lessons and challenges in building a commercial tool for developer testing
Proceedings of the 2006 international symposium on Software testing and analysis
A theory of regression testing for behaviourally compatible object types: Research Articles
Software Testing, Verification & Reliability - UKTest 2005: The Third U.K. Workshop on Software Testing Research
An Empirical Study of Test Case Filtering Techniques Based on Exercising Information Flows
IEEE Transactions on Software Engineering
Reliability of the Path Analysis Testing Strategy
IEEE Transactions on Software Engineering
Hi-index | 0.00 |
Regression testing, as it's commonly practiced, is unsound due to inconsistent test repair and test addition. This paper presents a new technique, differential testing, that alleviates the test repair problem and detects more changes than regression testing alone. Differential testing works by creating test suites for both the original system and the modified system and contrasting both versions of the system with these two suites. Differential testing is made possible by recent advances in automated unit test generation. Furthermore, it makes automated test generators more useful because it abstracts away the interpretation and management of large volumes of tests by focusing on the changes between test suites. In our preliminary empirical study of 3 subjects, differential testing discovered 21%, 34%, and 21% more behavior changes than regression testing alone.