  Software testing is an important tool to ensure software quality. This is a
hard task in robotics due to dynamic environments and the expensive development
and time-consuming execution of test cases. Most testing approaches use
model-based and / or simulation-based testing to overcome these problems. We
propose model-free skill-centric testing in which a robot autonomously executes
skills in the real world and compares it to previous experiences. The skills
are selected by maximising the expected information gain on the distribution of
erroneous software functions. We use deep learning to model the sensor data
observed during previous successful skill executions and to detect
irregularities. Sensor data is connected to function call profiles such that
certain misbehaviour can be related to specific functions. We evaluate our
approach in simulation and in experiments with a KUKA LWR 4+ robot by
purposefully introducing bugs to the software. We demonstrate that these bugs
can be detected with high accuracy and without the need for the implementation
of specific tests or task-specific models.
