TY - GEN
T1 - Scalability analysis of grammatical evolution based test data generation
AU - Anjum, Muhammad Sheraz
AU - Ryan, Conor
N1 - Publisher Copyright:
© 2020 ACM.
PY - 2020/6/25
Y1 - 2020/6/25
N2 - Heuristic-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 result in the need for highly precise data values (such as of the form i=j=k) for code coverage analysis. This requirement makes it very difficult for Genetic Algorithm (GA)-based approach to successfully search for the required test data from vast search spaces of real-life programs. Ariadne is the only Grammatical Evolution (GE)-based test data generation system, proposed to date, that uses grammars to exploit variable interdependencies to improve code coverage. Ariadne has been compared favourably to other well-known test data generation techniques in the literature; however, its scalability has not yet been tested for increasingly complex programs. This paper presents the results of a rigorous analysis performed to examine Ariadne's scalability. We also designed and employed a large set of highly scalable 18 benchmark programs for our experiments. Our results suggest that Ariadne is highly scalable as it exhibited 100% coverage across all the programs of increasing complexity with significantly smaller search costs than GA-based approaches, which failed even with huge search budgets.
AB - Heuristic-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 result in the need for highly precise data values (such as of the form i=j=k) for code coverage analysis. This requirement makes it very difficult for Genetic Algorithm (GA)-based approach to successfully search for the required test data from vast search spaces of real-life programs. Ariadne is the only Grammatical Evolution (GE)-based test data generation system, proposed to date, that uses grammars to exploit variable interdependencies to improve code coverage. Ariadne has been compared favourably to other well-known test data generation techniques in the literature; however, its scalability has not yet been tested for increasingly complex programs. This paper presents the results of a rigorous analysis performed to examine Ariadne's scalability. We also designed and employed a large set of highly scalable 18 benchmark programs for our experiments. Our results suggest that Ariadne is highly scalable as it exhibited 100% coverage across all the programs of increasing complexity with significantly smaller search costs than GA-based approaches, which failed even with huge search budgets.
KW - Automatic test data generation
KW - Code coverage analysis
KW - Evolutionary testing
KW - Grammatical evolution
KW - Scalability
KW - Search based software testing
KW - Software testing
KW - Variable interdependencies
UR - http://www.scopus.com/inward/record.url?scp=85091739117&partnerID=8YFLogxK
U2 - 10.1145/3377930.3390167
DO - 10.1145/3377930.3390167
M3 - Conference contribution
AN - SCOPUS:85091739117
T3 - GECCO 2020 - Proceedings of the 2020 Genetic and Evolutionary Computation Conference
SP - 1213
EP - 1221
BT - GECCO 2020 - Proceedings of the 2020 Genetic and Evolutionary Computation Conference
PB - Association for Computing Machinery
T2 - 2020 Genetic and Evolutionary Computation Conference, GECCO 2020
Y2 - 8 July 2020 through 12 July 2020
ER -