During the developement of a software several errors can crop up. They could lead to great risks in cases where human life depends on the finished software. To avoid such errors software testing is usually started during the developement phase, to discover these mistakes as soon as possible. Thus we can ensure that our application works properly and in the same time we can also reduce the development cost of the project.
Software testing has multiple different levels. Such as modul-testing, acceptance-testing or integration testing. Integration testing is the phase in software testing where individual software modules are combined and tested as a whole. The purpose of this testing is to verify functional, performance, and reliability requirements placed on major design items. The integration tests are usually carried out by hand, but in cases of safety-critical systems it must be done with the usage of well-defined test coverage criterias. This can be supported by model based planning and model based test generation.
The goal of this thesis is to choose appropriate test coverage criterias, which can be used during embedded system integration testing. Based on these coverage criterias, I developed a model based test case generator.
I modeled the communication of the embedded system's different components by using timed automatas in the UPPAAL model checker tool.
Based on the coverage criterias the model checker performs the model verification then returns the results. The necessary test inputs and outputs are then generated from these results.
During this thesis I developed the software that implements the model based test generation then it was tested by generating test cases for a sample application.