For embedded systems testing is the most important quality assurance measure. Essential to a good test quality is the systematic design of test cases. Test case design defines the kind and scope of the test. Test case design is difficult to automate. For functional testing the generation of test cases is usually not possible since no formal specifications are applied in industrial practice.
Structural testing is also difficult to automate due to the limits of symbolic executions.
Furthermore, for testing the temporal behavior no specialized methods and tools exist. Therefore in most cases, test cases have to be defined manually. A promising approach to automate test case design is the Evolutionary Test. It could be applied to testing the temporal behavior of systems as well as to structural testing. Evolutionary testing uses metaheuristic search techniques like evolutionary algorithms and simulated annealing for the generation of test cases.