EvoSuite
Original author(s) | Dr. Gordon Fraser, Dr. Andrea Arcuri |
---|---|
Repository | github |
Written in | Java |
License | LGPL-3.0 |
Website | www |
EvoSuite is a tool that automatically generates unit tests for Java software. EvoSuite uses an evolutionary algorithm to generate JUnit tests. EvoSuite can be run from the command line, and it also has plugins to integrate it in Maven, IntelliJ and Eclipse. EvoSuite has been used on more than a hundred open-source software and several industrial systems, finding thousands of potential bugs.
History
[edit]EvoSuite was originally created in 2010 as output of a research project by Dr. Gordon Fraser and Dr. Andrea Arcuri. EvoSuite is currently released under LGPL license, and its source code is hosted on GitHub. In academia, EvoSuite is often referred as one of the main reference tools for search-based software testing.[1]
Other usages
[edit]As EvoSuite is released as open-source (and so freely available to download and modify), it has been used as a reference tool for search-based software testing in a number of independent studies, like:
- Comparison with other tools like Pex, CATG, jPET and SPF[2]
- Extension to system level testing for XML inputs[3]
- Extension to study many-objective genetic algorithms[4]
See also
[edit]- Test data generation
- Search-based software engineering
- Test automation
- List of unit testing frameworks
- Unit testing
Bibliography
[edit]- Fraser, Gordon; Arcuri, Andrea (2011). "EvoSuite". Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering. pp. 416–419. doi:10.1145/2025113.2025179. ISBN 9781450304436. S2CID 10599913.
- Fraser, Gordon; Arcuri, Andrea (23 December 2014). "A Large-Scale Evaluation of Automated Unit Test Generation Using EvoSuite". ACM Transactions on Software Engineering and Methodology. 24 (2): 1–42. doi:10.1145/2685612. S2CID 207221067.
- Fraser, Gordon; Arcuri, Andrea (15 November 2013). "1600 faults in 100 projects: automatically finding faults while achieving high coverage with EvoSuite" (PDF). Empirical Software Engineering. 20 (3): 611–639. doi:10.1007/s10664-013-9288-2. S2CID 2451657.
References
[edit]- ^ Harman, Mark; Yue, Jia; Zhang, Yuanyuan (2015). "Achievements, Open Problems and Challenges for Search Based Software Testing". 2015 IEEE 8th International Conference on Software Testing, Verification and Validation (ICST). pp. 1–12. CiteSeerX 10.1.1.686.7418. doi:10.1109/ICST.2015.7102580. ISBN 978-1-4799-7125-1. S2CID 15272060.
- ^ Cseppento, L.; Micskei, Z. (2015). "Evaluating Symbolic Execution-Based Test Tools". 2015 IEEE 8th International Conference on Software Testing, Verification and Validation (ICST). pp. 1–10. doi:10.1109/ICST.2015.7102587. ISBN 978-1-4799-7125-1. S2CID 10819480.
- ^ Havrikov, Nikolas; Höschele, Matthias; Galeotti, Juan Pablo; Zeller, Andreas (2014). "XMLMate: Evolutionary XML test generation". Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering. pp. 719–722. doi:10.1145/2635868.2661666. ISBN 9781450330565. S2CID 10743521.
- ^ Panichella, Annibale; Kifetew, Fitsum Meshesha; Tonella, Paolo (2015). "Reformulating Branch Coverage as a Many-Objective Optimization Problem". 2015 IEEE 8th International Conference on Software Testing, Verification and Validation (ICST). pp. 1–10. doi:10.1109/ICST.2015.7102604. ISBN 978-1-4799-7125-1. S2CID 15965879.