Mutation-Based Test Generation for PLC Embedded Software Using Model Checking - Testing Software and Systems (ICTSS 2016)
Conference Papers Year : 2016

Mutation-Based Test Generation for PLC Embedded Software Using Model Checking

Abstract

Testing is an important activity in engineering of industrial embedded software. In certain application domains (e.g., railway industry) engineering software is certified according to safety standards that require extensive software testing procedures to be applied for the development of reliable systems. Mutation analysis is a technique for creating faulty versions of a software for the purpose of examining the fault detection ability of a test suite. Mutation analysis has been used for evaluating existing test suites, but also for generating test suites that detect injected faults (i.e., mutation testing). To support developers in software testing, we propose a technique for producing test cases using an automated test generation approach that operates using mutation testing for software written in IEC 61131-3 language, a programming standard for safety-critical embedded software, commonly used for Programmable Logic Controllers (PLCs). This approach uses the Uppaal model checker and is based on a combined model that contains all the mutants and the original program. We applied this approach in a tool for testing industrial PLC programs and evaluated it in terms of cost and fault detection. For realistic validation we collected industrial experimental evidence on how mutation testing compares with manual testing as well as automated decision-coverage adequate test generation. In the evaluation, we used manually seeded faults provided by four industrial engineers. The results show that even if mutation-based test generation achieves better fault detection than automated decision coverage-based test generation, these mutation-adequate test suites are not better at detecting faults than manual test suites. However, the mutation-based test suites are significantly less costly to create, in terms of testing time, than manually created test suites. Our results suggest that the fault detection scores could be improved by considering some new and improved mutation operators (e.g., Feedback Loop Insertion Operator (FIO)) for PLC programs as well as higher-order mutations.
Fichier principal
Vignette du fichier
419911_1_En_10_Chapter.pdf (676.56 Ko) Télécharger le fichier
Origin Files produced by the author(s)
Loading...

Dates and versions

hal-01643718 , version 1 (21-11-2017)

Licence

Identifiers

Cite

Eduard P. Enoiu, Daniel Sundmark, Adnan Čaušević, Robert Feldt, Paul Pettersson. Mutation-Based Test Generation for PLC Embedded Software Using Model Checking. 28th IFIP International Conference on Testing Software and Systems (ICTSS), Oct 2016, Graz, Austria. pp.155-171, ⟨10.1007/978-3-319-47443-4_10⟩. ⟨hal-01643718⟩
109 View
279 Download

Altmetric

Share

More