Towards Automated Boundary Value Testing with Program Derivatives and Search
Robert Feldt, Felix Dobslaw

TL;DR
This paper introduces a formalization of boundary value analysis using program derivatives and information theory, proposing a search-based method for automated boundary testing, demonstrated through an illustrative example.
Contribution
It formalizes boundary value analysis with program derivatives and integrates search techniques, offering a novel approach for automated boundary testing.
Findings
Formalization of BVA using program derivatives
Integration of derivatives with search-based testing
Illustrative example demonstrating the approach
Abstract
A natural and often used strategy when testing software is to use input values at boundaries, i.e. where behavior is expected to change the most, an approach often called boundary value testing or analysis (BVA). Even though this has been a key testing idea for long it has been hard to clearly define and formalize. Consequently, it has also been hard to automate. In this research note we propose one such formalization of BVA by, in a similar way as to how the derivative of a function is defined in mathematics, considering (software) program derivatives. Critical to our definition is the notion of distance between inputs and outputs which we can formalize and then quantify based on ideas from Information theory. However, for our (black-box) approach to be practical one must search for test inputs with specific properties. Coupling it with search-based software engineering is thus…
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 · Evolutionary Algorithms and Applications · Teaching and Learning Programming
