Georg SchlegelFor machine life-long use
The IP69K combi pushbutton emergency stop is designed for mobile machines and special vehicles that are exposed to difficult environmental conditions. It was developed in a joint project between Data Panel and Schlegel.

September 22, 14:00 - 14:30 with Frank Büchner, Hitex
Checking test case quality with mutation tests
Unfortunately, 100% code coverage does not automatically imply good test cases. However, mutation testing allows the quality of test cases to be checked and, if necessary, improved. This is important for safety-critical software. In mutation testing, a set of passed test cases is re-executed on a mutated test object. Mutating means that the software to be tested is (subtly) changed. IEC 61508 therefore aptly calls the mutation test "error seeding". If at least one of the tests fails when the tests are repeated, then this test case set has uncovered ("killed") the mutation.
If not, this is questionable and must be checked. There may be an equivalent mutation in which the outward behavior of the test object does not change. This must be tested by a human; the resulting effort is the problem of the mutation test.
The lecture introduces the mutation test procedure and explains terms such as strong/weak mutation, coupling effect, the hypothesis of the competent programmer, mutation test in contrast to error injection, adequate test case. Furthermore, questions such as:
Which mutations are useful, which are rather not?
Why is the problem of mutation testing reduced in the case of safety-critical software?
To what extent can the mutation test be automated?
How can a mutation be killed without a failed test case?
