Abstract:Random testing is a widely practiced black-box testing technique. Recently, adaptive random testing has been proposed to improve the random testing, and simulation results show that the improvements depend on the characteristic of failure-causing regions of program under test. This paper presents the concept of test constraints and employs them to specify the distribution of failure-causing regions within the input domain of program under test. Characteristic analysis of failure-causing regions can be conducted on the base of their test constraints, which are derived using the available program analysis techniques. To evaluate the proposed technique, a case study on a real-life application was conducted, and the results show that the proposed test constraint provides an insight into how a failure is triggered and propagated, and the constraint-based analysis helps to improve the quality of test case design and assess the applicability of the adaptive random testing.