Test Criteria Definition for B Models

Test criteria are defined in order to guide the selection of subsets of the input domain to be covered during testing. A unification of two categories of test criteria, program based and specification based, is presented. Such a unification is possible for B models because the specification, refinement concepts and implementation are captured in one notation. The notion of control flow graph is extended to handle the abstract constructs of the generalized substitution language, and a link between the coverage of the graph and the coverage of the before-after predicate is established. A set of criteria for the coverage of the control flow graph is proposed. These criteria are partially ordered according to their stringency, so that the coverage strategy may be tuned according to the complexity of the operation under test.

[1]  Steven P. Miller,et al.  Applicability of modified condition/decision coverage to software testing , 1994, Softw. Eng. J..

[2]  Hélène Waeselynck,et al.  B model animation for external verification , 1998, Proceedings Second International Conference on Formal Engineering Methods (Cat.No.98EX241).

[3]  Albert L. Baker,et al.  A standard representation of imperative language programs for data collection and software measures specification , 1988, J. Syst. Softw..

[4]  Peter T. Breuer,et al.  Towards Correct Executable Semantics for Z , 1994, Z User Workshop.

[5]  Lilian Burdy,et al.  Well Defined B , 1998, B.

[6]  Elaine J. Weyuker,et al.  An Applicable Family of Data Flow Testing Criteria , 1988, IEEE Trans. Software Eng..

[7]  Daniel Le Métayer,et al.  CASTING: a formally based software test generation method , 1997, First IEEE International Conference on Formal Engineering Methods.

[8]  Robert M. Hierons,et al.  Testing from a Z Specification , 1997, Softw. Test. Verification Reliab..

[9]  Jeremy Dick,et al.  Automating the Generation and Sequencing of Test Cases from Model-Based Specifications , 1993, FME.

[10]  Jean-Raymond Abrial,et al.  The B-book - assigning programs to meanings , 1996 .