Bandera: extracting finite-state models from Java source code
Proceedings of the 22nd international conference on Software engineering
Testing object-oriented systems: models, patterns, and tools
Testing object-oriented systems: models, patterns, and tools
Dynamically Discovering Likely Program Invariants to Support Program Evolution
IEEE Transactions on Software Engineering - Special issue on 1999 international conference on software engineering
Patterns of Enterprise Application Architecture
Patterns of Enterprise Application Architecture
Houdini, an Annotation Assistant for ESC/Java
FME '01 Proceedings of the International Symposium of Formal Methods Europe on Formal Methods for Increasing Software Productivity
Software Testing and Analysis: Process, Principles and Techniques
Software Testing and Analysis: Process, Principles and Techniques
Practical Model-Based Testing: A Tools Approach
Practical Model-Based Testing: A Tools Approach
Automatic synthesis of behavior protocols for composable web-services
Proceedings of the the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
On the Synthesis of Finite-State Machines from Samples of Their Behavior
IEEE Transactions on Computers
Improving Testing of Enterprise Systems by Model-Based Testing on Graphical User Interfaces
ECBS '10 Proceedings of the 2010 17th IEEE International Conference and Workshops on the Engineering of Computer-Based Systems
Generating test cases for specification mining
Proceedings of the 19th international symposium on Software testing and analysis
Model-based quality assurance of protocol documentation: tools and methodology
Software Testing, Verification & Reliability
Experimental specification mining for enterprise applications
Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering
Crawling Ajax-Based Web Applications through Dynamic Analysis of User Interface State Changes
ACM Transactions on the Web (TWEB)
Invariant-Based Automatic Testing of Modern Web Applications
IEEE Transactions on Software Engineering
Automated Abstractions for Contract Validation
IEEE Transactions on Software Engineering
WebMate: a tool for testing web 2.0 applications
Proceedings of the Workshop on JavaScript Tools
EXSYST: search-based GUI testing
Proceedings of the 34th International Conference on Software Engineering
Automated API Property Inference Techniques
IEEE Transactions on Software Engineering
Hi-index | 0.00 |
Today's enterprise web applications demand very high release cycles---and consequently, frequent tests. Automating these tests typically requires a behavior model: A description of the states the application can be in, the transitions between these states, and the expected results. Furthermore one needs scripts to make the abstract actions (transitions) in the model executable. As specifying such behavior models and writing the necessary scripts manually is a hard task, a possible alternative could be to extract them from existing applications. However, mining such models can be a challenge, in particular because one needs to know when two states are equivalent, as well as how to reach that state. We present ProCrawl (PROcess CRAWLer), a generic approach to mine behavior models from (multi-user) enterprise web applications. ProCrawl observes the behavior of the application through its user interface, generates and executes tests to explore unobserved behavior. In our evaluation of three non-trivial web applications (an open-source shop system, an SAP product compliance application, and an open-source conference manager), ProCrawl produces models that precisely abstract application behavior and which can be directly used for effective model-based regression testing.