One way of evaluating the robustness of a web service is to test it against invalid inputs. We introduce a model-based mutation technique which automatically generates faulty test inputs. From the specification of a Web service, a test model is designed using Uppaal Timed Automata and the conformance between the model and the implementation is validated via online model-based testing with the Uppaal Tron tool. A set of mutation operators is applied to the test model in order to generate mutant test models. We validate all generated mutants via verification rules and select those that are executable and introduce proper mutations. We employ bisimulation as a tool for detecting and eliminating equivalent mutants, that is those mutants which have identical input-output behavior with the original test model. The resulting mutants are used for online test generation against the service implementation in order to check whether the latter allows for unspecified behavior. We discuss tool support and present an experiment of applying our method for a case study of a blog web service with real-life properties. The experiment shows that the proposed approach of mutating the specifications is effective in detecting errors both in the system functionality and in the test model.
|Toimittajat||Cabello Enrique, Cardoso Jorge, Ludwig André, Maciaszek Leszek A., van Sinderen Marten|
|DOI - pysyväislinkit|
|Tila||Julkaistu - 2017|
|OKM-julkaisutyyppi||A3 Kirjan osa tai toinen tutkimuskirja|
- Software Testing
- UPPAAL Timed Automata
- model-based mutation testing