In today's world the complexity of industrial automation systems increases rapidly. Because of this complexity, the development of such automation systems becomes more time consuming and has to deal with adaptations of the industrial automation code on short notice. The engineering efficiency has to be increased in terms of reusability support of tested and testable software components for upcoming projects in order to reduce the development time and costs.
The intention of this thesis is to make a significant step towards an increase in the quality of industrial automation software by providing a test infrastructure with appropriate testing techniques for industrial automation software. To ensure the high software quality, testing processes are necessary which assist the development engineers during the life-cycle of developing industrial automation systems. First steps are available in academia to adapt testing techniques from the software engineering domain applied on the industrial automation domain.
A new test framework is developed in this thesis which is able to support testing of industrial automation software, i.e. based on IEC 61131 and IEC 61499, on various levels of detail and from different perspectives. New criteria are proposed for selecting Unified Modeling Language (UML) models which are useable for specifying tests of industrial automation software. According to the developed test framework, different testing techniques considering the different test levels are presented which are able to test industrial automation software considering the Test-First Development strategy. Finally, a new automation component architecture and a new component design for developing industrial automation applications are introduced to support testability. Therefore, it is now possible to increase the quality of industrial control software by using the newly developed test infrastructure.