Bounding Random Test Set Size with Computational Learning Theory
Neil Walkinshaw, Michael Foster, Jose Miguel Rojas, Robert M Hierons

TL;DR
This paper applies probabilistic methods from Computational Learning Theory to determine an upper bound on the number of random tests needed to confidently cover software behaviors, without requiring prior test execution data.
Contribution
It introduces a novel approach to estimate testing bounds using only coverage targets, without observing test samples, validated on Java units and autonomous systems.
Findings
Provides a theoretical upper bound on test set size
First to estimate testing bounds solely from coverage targets
Validated bounds on real-world Java and autonomous systems
Abstract
Random testing approaches work by generating inputs at random, or by selecting inputs randomly from some pre-defined operational profile. One long-standing question that arises in this and other testing contexts is as follows: When can we stop testing? At what point can we be certain that executing further tests in this manner will not explore previously untested (and potentially buggy) software behaviors? This is analogous to the question in Machine Learning, of how many training examples are required in order to infer an accurate model. In this paper we show how probabilistic approaches to answer this question in Machine Learning (arising from Computational Learning Theory) can be applied in our testing context. This enables us to produce an upper bound on the number of tests that are required to achieve a given level of adequacy. We are the first to enable this from only knowing the…
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.
