Satpathy, Manoranjan, Leuschel, Michael and Butler, Michael,
Gurevich, Yuri, Petrenko, Alexander K. and Kossatchev, Alexander (eds.)
ProTest: An Automatic Test Environment for B Specifications.
Electronic Notes in Theoretical Computer Science, 111, .
This is the latest version of this item.
We present ProTest, an automatic test environment for B specifications. B is a model-oriented notation where systems are specified in terms of abstract states and operations on abstract states. ProTest first generates a state coverage graph of a B specification through exhaustive model checking, and the coverage graph is traversed to generate a set of test cases, each being a sequence of B operations. For the model checking to be exhaustive, some transformations are applied to the sets used in the B machine. The approach also works if it is not exhaustive; one can stop at any point in time during the state space exploration and generate test cases from the coverage graph obtained so far. ProTest then simultaneously performs animation of the B machine and the execution of the corresponding implementation in Java, and assign verdicts on the test results. With some restrictions imposed on the B operations, the whole of the testing process is performed mechanically. We demonstrate the efficacy of our test environment by performing a small case study from industry. Furthermore, we present a solution to the problem of handling non-determinism in B operations.
Available Versions of this Item
Actions (login required)