Software unit test coverage and adequacy
ACM Computing Surveys (CSUR)
Testing object-oriented systems: models, patterns, and tools
Testing object-oriented systems: models, patterns, and tools
Art of Software Testing
Model-based testing for real: The inhouse card case study
International Journal on Software Tools for Technology Transfer (STTT)
Software Reliability Engineering: More Reliable Software Faster and Cheaper
Software Reliability Engineering: More Reliable Software Faster and Cheaper
Model-based development of dynamically adaptive software
Proceedings of the 28th international conference on Software engineering
Automatic generation of test data generators for synchronous programs: Lutess V2
Workshop on Domain specific approaches to software test automation: in conjunction with the 6th ESEC/FSE joint meeting
A survey on model-based testing approaches: a systematic review
Proceedings of the 1st ACM international workshop on Empirical assessment of software engineering languages and technologies: held in conjunction with the 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE) 2007
Supporting the selection of model-based testing approaches for software projects
Proceedings of the 3rd international workshop on Automation of software test
Model-based testing approaches selection for software projects
Information and Software Technology
ICSP'08 Proceedings of the Software process, 2008 international conference on Making globally distributed software development a success story
Automated boundary test generation from JML specifications
FM'06 Proceedings of the 14th international conference on Formal Methods
Hi-index | 0.00 |
Model-based testing has become increasingly popular in recent years. Major reasons include (1) the need for quality assurance for increasingly complex systems, (2) the emerging model-centric development paradigm (e.g., UML and MDA) with its seemingly direct connection to testing, and (3) the advent of test-centered development methodologies.Model-based testing relies on execution traces of behavior models. They are used as test cases for an implementation: input and expected output. This complements the ideas of model-driven testing. The latter uses static models to derive test drivers to automate test execution. This assumes the existence of test cases, and is, like the particular intricacies of OO testing, not in the focus of this tutorial.We cover major methodological and technological issues: the business case of model-based testing within model-based development, the need for abstraction and inverse concretization, test selection, and test case generation. We (1) discuss different scenarios of model-based testing, (2) present common abstractions when building models, and their consequences for testing, (3) explain how to use functional, structural, and stochastic test selection criteria, and (4) describe today's test generation technology.We provide both practical guidance and a discussion of the state-of-the-art. Potentials of model-based testing in practical applications and future research are highlighted.