Seeding strategies in search‐based unit test generation. (7th March 2016) - Rojas, José Miguel; Fraser, Gordon; Arcuri, Andrea
Summary: Search‐based techniques have been applied successfully to the task of generating unit tests for object‐oriented software. However, as for any meta‐heuristic search, the efficiency heavily depends on many factors; seeding, which refers to the use of previous related knowledge to help solve the testing problem at hand, is one such factor that may strongly influence this efficiency. This paper investigates different seeding strategies for unit test generation, in particular seeding of numerical and string constants derived statically and dynamically, seeding of type information and seeding of previously generated tests. To understand the effects of these seeding strategies, the results of a large empirical analysis carried out on a large collection of open‐source projects from the SF110 corpus and the Apache Commons repository are reported. These experiments show with strong statistical confidence that, even for a testing tool already able to achieve high coverage, the use of appropriate seeding strategies can further improve performance. © 2016 The Authors. Software Testing, Verification and Reliability Published by John Wiley & Sons Ltd. Abstract : This paper investigates different strategies to seed values (numerical and string constants derived statically and dynamically, type information, and previous solutions) during search‐based unit test generation. Results of a large empirical analysis show with strong statistical confidence that the use of appropriate seeding strategies can further improve the code coverage achieved by unit test generation tools.