Empirical evaluations on the cost-effectiveness of state-based testing: An industrial case study
2014 (English)In: Information and Software Technology, ISSN 0950-5849, Vol. 56, no 8, 890-910 p.Article in journal (Refereed) Published
Context Test models describe the expected behavior of the software under test and provide the basis for test case and oracle generation. When test models are expressed as UML state machines, this is typically referred to as state-based testing (SBT). Despite the importance of being systematic while testing, all testing activities are limited by resource constraints. Thus, reducing the cost of testing while ensuring sufficient fault detection is a common goal in software development. No rigorous industrial case studies of SBT have yet been published. Objective In this paper, we evaluate the cost-effectiveness of SBT on actual control software by studying the combined influence of four testing aspects: coverage criterion, test oracle, test model and unspecified behavior (sneak paths). Method An industrial case study was used to investigate the cost-effectiveness of SBT. To enable the evaluation of SBT techniques, a model-based testing tool was configured and used to automatically generate test suites. The test suites were evaluated using 26 real faults collected in a field study. Results Results show that the more detailed and rigorous the test model and oracle, the higher the fault-detection ability of SBT. A less precise oracle achieved 67% fault detection, but the overall cost reduction of 13% was not enough to make the loss an acceptable trade-off. Removing details from the test model significantly reduced the cost by 85%. Interestingly, only a 24–37% reduction in fault detection was observed. Testing for sneak paths killed the remaining eleven mutants that could not be killed by the conformance test strategies. Conclusions Each of the studied testing aspects influences cost-effectiveness and must be carefully considered in context when selecting strategies. Regardless of these choices, sneak-path testing is a necessary step in SBT since sneak paths are common while also undetectable by conformance testing.
Place, publisher, year, edition, pages
Elsevier , 2014. Vol. 56, no 8, 890-910 p.
State-based testing, UML, Cost effectiveness, Automated testing, Empirical evaluation, Industrial case study
IdentifiersURN: urn:nbn:se:bth-6671DOI: 10.1016/j.infsof.2014.02.011ISI: 000337261800005Local ID: oai:bth.se:forskinfo0EC9153D017C0DA7C1257CDD0049ECDAOAI: oai:DiVA.org:bth-6671DiVA: diva2:834195