ABSTRACT
Generating tests for software is an important, but difficult, task. Search-based test generation is promising, as it reduces the time required from human experts, but suffers from many problems and limitations. Namely, the inability to fully incorporate a tester's domain knowledge into the search, its difficulty in creating very complex objects, and the problems associated with variable length tests. This paper illustrates how Grammatical Evolution could address and provide a possible solution to each of these concerns.
- M Moein Almasi, Hadi Hemmati, Gordon Fraser, Andrea Arcuri, and Janis Benefelds. 2017. An industrial evaluation of unit test generation: Finding real faults in a financial application. In ICSE-SEIP. IEEE.Google Scholar
- Muhammad Sheraz Anjum and Conor Ryan. 2021. Seeding Grammars in Grammatical Evolution to Improve Search-Based Software Testing. SN Computer Science 2, 4 (2021).Google Scholar
- Adina Deiner, Christoph Frädrich, Gordon Fraser, Sophia Geserer, and Niklas Zantner. 2020. Search-Based Testing for Scratch Programs. In SSBSE. Springer.Google Scholar
- Gordon Fraser and Andrea Arcuri. 2011. Evosuite: automatic test suite generation for object-oriented software. In ESEC/FSE.Google Scholar
- René Just, Darioush Jalali, and Michael D Ernst. 2014. Defects4J: A database of existing faults to enable controlled testing studies for Java programs. In ISSTA.Google Scholar
- Conor Ryan, John James Collins, and Michael O Neill. 1998. Grammatical Evolution: Evolving programs for an arbitrary language. In EuroGP. Springer.Google Scholar
- Sina Shamshiri, René Just, José Miguel Rojas, Gordon Fraser, Phil McMinn, and Andrea Arcuri. 2015. Do automatically generated unit tests find real faults? an empirical study of effectiveness and challenges (t). In ASE. IEEE, 201--211.Google Scholar
- Sebastian Vogl, Sebastian Schweikl, Gordon Fraser, Andrea Arcuri, Jose Campos, and Annibale Panichella. 2021. EVOSUITE at the SBST 2021 Tool Competition. In SBST. IEEE.Google Scholar
Index Terms
- The case for grammatical evolution in test generation
Recommendations
Scalability analysis of grammatical evolution based test data generation
GECCO '20: Proceedings of the 2020 Genetic and Evolutionary Computation ConferenceHeuristic-based search techniques have been increasingly used to automate different aspects of software testing. Several studies suggest that variable interdependencies may exist in branching conditions of real-life programs, and these dependencies ...
Ariadne: Evolving Test Data Using Grammatical Evolution
Genetic ProgrammingAbstractSoftware testing is a key component in software quality assurance; it typically involves generating test data that exercises all instructions and tested conditions in a program and, due to its complexity, can consume as much as 50% of overall ...
Automatic test case evolution
Software systems evolve incrementally both during and after development, and many test cases become obsolete while software evolves. Updating test suites in the context of software evolution is a complex and time consuming activity. This article focuses ...
Comments