Title
Finding a boundary between valid and invalid regions of the input space.
Abstract
In the context of robustness testing, the boundary between the valid and invalid regions of the input space can be an interesting source of erroneous inputs. Knowing where a specific software under test (SUT) has a boundary is also essential for validation in relation to requirements. However, finding where a SUT actually implements the boundary is a non-trivial problem that has not gotten much attention. This paper proposes a method of finding the boundary between the valid and invalid regions of the input space, by developing pairs of test sets that describe that boundary in detail. The proposed method consists of two steps. First, test data generators, directed by a search algorithm to maximise distance to known, valid test cases, generate valid test cases that are closer to the boundary. Second, these valid test cases undergo mutations to try to push them over the boundary and into the invalid part of the input space. This results in a pair of test sets, one consisting of test cases on the valid side of the boundary and a matched set on the outer side, with only a small distance between the two sets. The method is evaluated on a number of examples from the standard library of a modern programming language. We propose a method of determining the boundary between valid and invalid regions of the input space, and apply it on a SUT that has a non-contiguous valid region of the input space. From the small distance between the developed pairs of test sets, and the fact that one test set contains valid test cases and the other invalid test cases, we conclude that the pair of test sets described the boundary between the valid and invalid regions of that input space. Differences of behaviour can be observed between different distances and different sets of mutation operators, but all show that the method is able to identify the boundary between the valid and invalid regions of the input space. This is an important step towards more automated robustness testing.
Year
DOI
Venue
2018
10.1109/APSEC.2018.00031
2018 25th Asia-Pacific Software Engineering Conference (APSEC)
Keywords
Field
DocType
Robustness,Generators,Testing,Software,Space exploration,Switches,Measurement
Search algorithm,Robustness testing,Computer science,Algorithm,Real-time computing,Software,Test case,Test data,Mutation operator,Test set,Software testing
Journal
Volume
ISSN
Citations 
abs/1810.06720
1530-1362
1
PageRank 
References 
Authors
0.35
0
2
Name
Order
Citations
PageRank
Bogdan Marculescu1404.43
Robert Feldt233529.03