Software testing based on formal specifications: a theory and a tool
Software Engineering Journal
Automatically Checking an Implementation against Its Formal Specification
IEEE Transactions on Software Engineering
QuickCheck: a lightweight tool for random testing of Haskell programs
ICFP '00 Proceedings of the fifth ACM SIGPLAN international conference on Functional programming
A Simple and Practical Approach to Unit Testing: The JML and JUnit Way
ECOOP '02 Proceedings of the 16th European Conference on Object-Oriented Programming
Random Testing in Isabelle/HOL
SEFM '04 Proceedings of the Software Engineering and Formal Methods, Second International Conference
GAST: generic automated software testing
IFL'02 Proceedings of the 14th international conference on Implementation of functional languages
Test-sequence generation with Hol-TestGen with an application to firewall testing
TAP'07 Proceedings of the 1st international conference on Tests and proofs
Zenon: an extensible automated theorem prover producing checkable proofs
LPAR'07 Proceedings of the 14th international conference on Logic for programming, artificial intelligence and reasoning
Development of a Generic Voter under FoCal
TAP '09 Proceedings of the 3rd International Conference on Tests and Proofs
Development Life-cycle of Critical Software Under FoCaL
Electronic Notes in Theoretical Computer Science (ENTCS)
Proof-Guided Test Selection from First-Order Specifications with Equality
Journal of Automated Reasoning
Testing first-order logic axioms in program verification
TAP'10 Proceedings of the 4th international conference on Tests and proofs
Proceedings of the 7th Workshop on Programming Languages and Analysis for Security
A first step in the design of a formally verified constraint-based testing tool: focaltest
TAP'12 Proceedings of the 6th international conference on Tests and Proofs
A framework for testing first-order logic axioms in program verification
Software Quality Control
Hi-index | 0.00 |
This article presents the generation and test case execution under the framework Focal. In the programming language Focal, all properties of the program are written within the source code. These properties are considered, here, as the program specification. We are interested in testing the code against these properties. Testing a property is split in two stages. First, the property is cut out in several elementary properties. An elementary property is a tuple composed of some pre-conditions and a conclusion. Lastly, each elementary property is tested separately. The pre-conditions are used to generate and select the test cases randomly. The conclusion allows us to compute the verdict. All the testing process is done automatically.