Search-based testing of procedural programs: Iterative single-target or multi-target approach?

Simone Scalabrino, Giovanni Grano, Dario di Nucci, Rocco Oliveto, Andrea De Lucia

Research output: Chapter in Book/Report/Conference proceedingConference contributionScientificpeer-review

23 Citations (Scopus)


In the context of testing of Object-Oriented (OO) software systems, researchers have recently proposed search based approaches to automatically generate whole test suites by considering simultaneously all targets (e.g., branches) defined by the coverage criterion (multi-target approach). The goal of whole suite approaches is to overcome the problem of wasting search budget that iterative single-target approaches (which iteratively generate test cases for each target) can encounter in case of infeasible targets. However, whole suite approaches have not been implemented and experimented in the context of procedural programs. In this paper we present OCELOT (Optimal Coverage sEarch-based tooL for sOftware Testing), a test data generation tool for C programs which implements both a state-of-the-art whole suite approach and an iterative single-target approach designed for a parsimonious use of the search budget. We also present an empirical study conducted on 35 open-source C programs to compare the two approaches implemented in OCELOT. The results indicate that the iterative single-target approach provides a higher efficiency while achieving the same or an even higher level of coverage than the whole suite approach.
Original languageEnglish
Title of host publicationSSBSE 2016: Search Based Software Engineering
Publication statusPublished - 2016


Dive into the research topics of 'Search-based testing of procedural programs: Iterative single-target or multi-target approach?'. Together they form a unique fingerprint.

Cite this