Finding a boundary between valid and invalid regions of the input space
Bogdan Marculescu, Robert Feldt

TL;DR
This paper introduces a method to identify the boundary between valid and invalid input regions in software testing, aiding automated robustness testing by generating test pairs near the boundary.
Contribution
The paper proposes a novel two-step method combining search-guided test generation and mutation to locate the boundary between valid and invalid input regions.
Findings
The method successfully identifies boundaries in various input spaces.
Test pairs are close to the boundary with one valid and one invalid case.
Different mutation operators affect boundary detection effectiveness.
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 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. 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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Testing and Debugging Techniques · Software Reliability and Analysis Research · Software Engineering Research
