Learning regular sets from queries and counterexamples
Information and Computation
The category-partition method for specifying and generating fuctional tests
Communications of the ACM
Automatic functional test generation using the extended finite state machine model
DAC '93 Proceedings of the 30th international Design Automation Conference
Discovering models of software processes from event-based data
ACM Transactions on Software Engineering and Methodology (TOSEM)
QuickCheck: a lightweight tool for random testing of Haskell programs
ICFP '00 Proceedings of the fifth ACM SIGPLAN international conference on Functional programming
Dynamically Discovering Likely Program Invariants to Support Program Evolution
IEEE Transactions on Software Engineering - Special issue on 1999 international conference on software engineering
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
ICGI '98 Proceedings of the 4th International Colloquium on Grammatical Inference
Inducing grammars from sparse data sets: a survey of algorithms and results
The Journal of Machine Learning Research
Generating Annotated Behavior Models from End-User Scenarios
IEEE Transactions on Software Engineering
Constructing Programs from Example Computations
IEEE Transactions on Software Engineering
Reverse Engineering State Machines by Interactive Grammar Inference
WCRE '07 Proceedings of the 14th Working Conference on Reverse Engineering
Automatic generation of software behavioral models
Proceedings of the 30th international conference on Software engineering
Automated discovery of state transitions and their functions in source code
Software Testing, Verification & Reliability - TAIC PART 2006 Special issue - Testing: Academic & Industrial Conference - Practice And Research Techniques
Improving dynamic software analysis by applying grammar inference principles
Journal of Software Maintenance and Evolution: Research and Practice - Special Issue on Program Comprehension through Dynamic Analysis (PCODA)
Programming Erlang: Software for a Concurrent World
Programming Erlang: Software for a Concurrent World
THE QSM ALGORITHM AND ITS APPLICATION TO SOFTWARE BEHAVIOR MODEL INDUCTION
Applied Artificial Intelligence
Execution trace analysis through massive sequence and circular bundle views
Journal of Systems and Software
Automatic testing of TCP/IP implementations using QuickCheck
Proceedings of the 8th ACM SIGPLAN workshop on ERLANG
On the Synthesis of Finite-State Machines from Samples of Their Behavior
IEEE Transactions on Computers
Inferring Finite-State Models with Temporal Constraints
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
FM '09 Proceedings of the 2nd World Congress on Formal Methods
Iterative Refinement of Reverse-Engineered Models by Model-Based Testing
FM '09 Proceedings of the 2nd World Congress on Formal Methods
Using compression algorithms to support the comprehension of program traces
Proceedings of the Eighth International Workshop on Dynamic Analysis
Property-based testing: the ProTest project
FMCO'09 Proceedings of the 8th international conference on Formal methods for components and objects
Nonlinear System Identification Using Coevolution of Models and Tests
IEEE Transactions on Evolutionary Computation
Property-based testing: the ProTest project
FMCO'09 Proceedings of the 8th international conference on Formal methods for components and objects
Hi-index | 0.00 |
The ProTest project is an EU FP7 project to develop techniques that improve the testing and verification of concurrent and distributed software systems. One of the four main work packages is concerned with the automated identification of specifications that could serve as a suitable basis for testing; this is currently a tedious and error-prone manual task that tends to be neglected in practice. This paper describes how this problem has been addressed in the ProTest project. It describes a technique that uses test executions to refine the specification from which they are generated. It shows how the technique has been implemented and applied to real Erlang systems. It also describes in detail the major challenges that remain to be addressed in future work.