Title :
Re-Using Generators of Complex Test Data
Author :
Poulding, Simon ; Feldt, Robert
Author_Institution :
Software Eng. Res. Lab. (SERL Sweden), Blekinge Inst. of Technol., Karlshamn, Sweden
Abstract :
The efficiency of random testing can be improved by sampling test inputs using a generating program that incorporates knowledge about the types of input most likely to detect faults in the software-under-test (SUT). But when the input of the SUT is a complex data type--such as a domain-specific string, array, record, tree, or graph--creating such a generator may be time- consuming and may require the tester to have substantial prior experience of the domain. In this paper we propose the re-use of generators created for one SUT on other SUTs that take the same complex data type as input. The re-use of a generator in this way would have little overhead, and we hypothesise that the re-used generator will typically be as least as efficient as the most straightforward form of random testing: sampling test inputs from the uniform distribution. We investigate this proposal for two data types using five generators. We assess test efficiency against seven real-world SUTs, and in terms of both structural coverage and the detection of seeded faults. The results support the re-use of generators for complex data types, and suggest that if a library of generators is to be maintained for this purpose, it is possible to extend library generators to accommodate the specific testing requirements of newly-encountered SUTs.
Keywords :
data handling; fault tolerant computing; program testing; SUT; data type; fault detection; library generators; random testing; seeded fault detection; software-under-test; structural coverage; test data generator reuse; test efficiency; Data models; Generators; Libraries; Optimization; Probability distribution; Proposals; Testing;
Conference_Titel :
Software Testing, Verification and Validation (ICST), 2015 IEEE 8th International Conference on
Conference_Location :
Graz
DOI :
10.1109/ICST.2015.7102605