A Framework for Specification-Based Testing
IEEE Transactions on Software Engineering
Testing object-oriented programs: from formal specification to test scenario generation
Journal of Systems and Software - Special issue on software engineering and knowledge engineering
Model checking
Model-Based Specification Animation Using Testgraphs
ICFEM '02 Proceedings of the 4th International Conference on Formal Engineering Methods: Formal Methods and Software Engineering
Experiences with PiZA, an Animator for Z
ZUM '97 Proceedings of the 10th International Conference of Z Users on The Z Formal Specification Notation
Formal Derivation of Finite State Machines for Class Testing
ZUM '98 Proceedings of the 11th International Conference of Z Users on The Z Formal Specification Notation
Automating the Generation and Sequencing of Test Cases from Model-Based Specifications
FME '93 Proceedings of the First International Symposium of Formal Methods Europe on Industrial-Strength Formal Methods
Automated Boundary Testing from Z and B
FME '02 Proceedings of the International Symposium of Formal Methods Europe on Formal Methods - Getting IT Right
SCR*: A Toolset for Specifying and Analyzing Software Requirements
CAV '98 Proceedings of the 10th International Conference on Computer Aided Verification
Possum: An Animator for the SUM Specification Language
APSEC '97 Proceedings of the Fourth Asia-Pacific Software Engineering and International Computer Science Conference
Requirements Engineering and Verification using Specification Animation
ASE '98 Proceedings of the 13th IEEE international conference on Automated software engineering
B Model Animation for External Verification
ICFEM '98 Proceedings of the Second IEEE International Conference on Formal Engineering Methods
Using Model Checking to Generate Tests from Specifications
ICFEM '98 Proceedings of the Second IEEE International Conference on Formal Engineering Methods
Animation Can Show Only the Presence of Errors, Never Their Absence
ASWEC '01 Proceedings of the 13th Australian Conference on Software Engineering
On checking the consistency of Object-Z classes
ACM SIGSOFT Software Engineering Notes
Integrating specification-based review and testing for detecting errors in programs
ICFEM'07 Proceedings of the formal engineering methods 9th international conference on Formal methods and software engineering
Hi-index | 0.00 |
Formal specifications can precisely and unambiguously define the required behavior of a software system or component. However, formal specifications are complex artifacts that need to be verified to ensure that they are consistent, complete, and validated against the requirements. Specification testing or animation tools exist to assist with this by allowing the specifier to interpret or execute the specification. However, currently little is known about how to do this effectively.This article presents a framework and tool support for the systematic testing of formal, model-based specifications. Several important generic properties that should be satisfied by model-based specifications are first identified. Following the idea of mutation analysis, we then use variants or mutants of the specification to check that these properties are satisfied. The framework also allows the specifier to test application-specific properties. All properties are tested for a range of states that are defined by the tester in the form of a testgraph, which is a directed graph that partially models the states and transitions of the specification being tested. Tool support is provided for the generation of the mutants, for automatically traversing the testgraph and executing the test cases, and for reporting any errors. The framework is demonstrated on a small specification and its application to three larger specifications is discussed. Experience indicates that the framework can be used effectively to test small to medium-sized specifications and that it can reveal a significant number of problems in these specifications.