Skip to Main Content
Software testing is the main activity to ensure the quality of software. This article proposes a testing framework that applies a black-box testing technique to automatically generate test cases for Java methods. The specification of Java methods is based on the Design by Contract software development approach. This article uses UML class diagrams and the Object Constraint Language to describe the specification of Java methods. The automatic generation of test cases is based on the unification mechanism and the powerful constraint solving mechanism of constraint logic programming. A novel characteristic of this approach is that the test input and its corresponding expected output of a test case are simultaneously generated in a unified fashion.