Evolutionary testing of classes
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
Rostra: A Framework for Detecting Redundant Object-Oriented Unit Tests
Proceedings of the 19th IEEE international conference on Automated software engineering
Test input generation for java containers using state matching
Proceedings of the 2006 international symposium on Software testing and analysis
CUTE and jCUTE: concolic unit testing and explicit path model-checking tools
CAV'06 Proceedings of the 18th international conference on Computer Aided Verification
Symstra: a framework for generating object-oriented unit tests using symbolic execution
TACAS'05 Proceedings of the 11th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Handling dynamic data structures in search based testing
Proceedings of the 10th annual conference on Genetic and evolutionary computation
Finding bugs in dynamic web applications
ISSTA '08 Proceedings of the 2008 international symposium on Software testing and analysis
Information and Software Technology
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
Predicting Effectiveness of Automatic Testing Tools
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
An empirical investigation into branch coverage for C programs using CUTE and AUSTIN
Journal of Systems and Software
FloPSy: search-based floating point constraint solving for symbolic execution
ICTSS'10 Proceedings of the 22nd IFIP WG 6.1 international conference on Testing software and systems
ASE '11 Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering
Boosting search based testing by using constraint based testing
SSBSE'12 Proceedings of the 4th international conference on Search Based Software Engineering
An orchestrated survey of methodologies for automated software test case generation
Journal of Systems and Software
Hi-index | 0.00 |
Achieving high structural coverage such as branch coverage in object oriented programs is an important and yet challenging goal due to two main challenges. First, some branches involve complex program logics and generating tests to cover them requires deep knowledge of the program structure and semantics. Second, covering some branches requires special method sequences to lead the receiver object or non-primitive arguments to specific desirable states. Previous work has developed the concolic testing technique (a combination of concrete and symbolic testing techniques) and the evolutionary testing technique to address these two challenges, respectively. However, neither technique was designed to address both challenges at the same time. To address the respective weaknesses of these two previous techniques, we propose a novel framework called Evacon that integrates evolutionary testing (used to search for desirable method sequences) and concolic testing (used to generate desirable method arguments). We have implemented our framework and applied it on six classes taken from the Java standard library and basic data structures. The experimental results show that the tests generated using our framework can achieve higher branch coverage than evolutionary testing or concolic testing alone