Software testing based on formal specifications: a theory and a tool
Software Engineering Journal
A calculus for the random generation of labelled combinatorial structures
Theoretical Computer Science
Generating finite state machines from abstract state machines
ISSTA '02 Proceedings of the 2002 ACM SIGSOFT international symposium on Software testing and analysis
Programming Deep Concurrent Constraint Combinators
PADL '00 Proceedings of the Second International Workshop on Practical Aspects of Declarative Languages
Jakarta: A Toolset for Reasoning about JavaCard
E-SMART '01 Proceedings of the International Conference on Research in Smart Cards: Smart Card Programming and Security
CP '95 Proceedings of the First International Conference on Principles and Practice of Constraint Programming
A CLP Framework for Computing Structural Test Data
CL '00 Proceedings of the First International Conference on Computational Logic
A Formal Executable Semantics of the JavaCard Platform
ESOP '01 Proceedings of the 10th European Symposium on Programming Languages and Systems
Essentials of Constraint Programming
Essentials of Constraint Programming
Essentials of Constraint Programming
Essentials of Constraint Programming
A New Way of Automating Statistical Testing Methods
Proceedings of the 16th IEEE international conference on Automated software engineering
Extending arbitrary solvers with constraint handling rules
Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programming
A Generic Method for Statistical Testing
ISSRE '04 Proceedings of the 15th International Symposium on Software Reliability Engineering
Generation of test sequences from formal specifications: GSM 11-11 standard case study
Software—Practice & Experience
Hi-index | 0.00 |
Automated functional testing consists in deriving test cases from the specification model of a program to detect faults within an implementation. In our work, we investigate using Constraint Handling Rules (CHRs) to automate the test cases generation process of functional testing. Our case study is a formal model of the Java Card Virtual Machine (JCVM) written in a sub-language of the Coq proof assistant. In this paper we define an automated translation from this formal model into CHRs and propose to generate test cases for each bytecode definition of the JCVM. The originality of our approach resides in the use of CHRs to faithfully model the formally specified operational semantics of the JCVM. The approach has been implemented in Eclipse Prolog and a full set of test cases have been generated for testing the JCVM.