Selection, mutation and recombination are concepts familiar to us from Darwin's theory of evolution. At the embedded world conference, which is being held in Nuremberg from 3 to 5 March, Fraunhofer FIRST will be demonstrating how these principles of nature can help improve software testing.
In the natural world, laws of evolutionary biology such as selection, cross-breeding and mutation ensure that plants and living beings adapt to changed environmental conditions, thus securing the survival of species. How these laws can be utilized to improve software quality will be demonstrated by Fraunhofer FIRST researchers at the 2009 embedded world conference (Hall 11, Stand 11-101) from 3 to 5 March.
Software testing consists of many individual test cases, which check specific aspects of the system under test. Crucial to the success of the software testing is the quality of these individual test cases. In the European project EvoTest, Fraunhofer FIRST is cooperating with industrial and research partners to develop software that automatically generates test cases for software testing. Instead of the test cases being generated randomly, selection, mutation and recombination are used to ensure their optimal adaptation to the respective test objective. This increases the efficiency of the ever more extensive test phase.
Combining Quantity with Quality
Test cases are usually generated manually or randomly. The former method is very time-consuming and therefore cost-intensive. The latter method involves generating and executing a very large number of test cases in order to test a reasonably acceptable portion of the software code. EvoTest now enables high-quality test cases to be automatically generated, executed and evaluated.
As with any systematic test process, users of EvoTest must begin by defining a test objective. An appropriate fitness function must then be defined, which evaluates the quality of the individual test cases with respect to the test objective. It begins by analyzing the initial population of test cases, to borrow a term from evolutionary biology. These are already existing test cases, which were generated manually, for example. If the defined test objective is already attained with the first generation, the evolutionary process is ended. Otherwise, individual test cases are selected, slightly altered or combined with each other. As in the theory of evolution, these processes are termed selection, mutation and recombination. The second generation is then re-subjected to the fitness evaluation, and the rest of the process proceeds as in the first round. With each repetition, a new generation of test cases is created that gets closer to attaining the test objective.
EvoTest can be deployed, for example, in hardware-in-the-loop test environments for safety-relevant embedded systems, for controllers' C code as well as for testing desktop software. The software can be integrated into all existing test systems. There is no need to discard established test methods; the new method improves them and makes them more efficient.
EvoTest is funded by the European Union as part of its 6th Framework Programme for Research and Technological Development. The project, which is headed by the Instituto Tecnológico de Informática in Valencia, Spain, brings together eight industrial and research partners. The three-year project ends in September 2009.
At the embedded world conference, Fraunhofer FIRST will also be demonstrating the benefits of specification-based testing. For more detailed information, please visit: http://www.first.fraunhofer.de/veranstaltung/embeddedworld09
We will be glad to provide graphic material and an infographic on request. Further information is available from:
Phone: + 49 (0) 30/6392-1814
Merkmale dieser Pressemitteilung:
Sie können Suchbegriffe mit und, oder und / oder nicht verknüpfen, z. B. Philo nicht logie.
Verknüpfungen können Sie mit Klammern voneinander trennen, z. B. (Philo nicht logie) oder (Psycho und logie).
Zusammenhängende Worte werden als Wortgruppe gesucht, wenn Sie sie in Anführungsstriche setzen, z. B. „Bundesrepublik Deutschland“.
Die Erweiterte Suche können Sie auch nutzen, ohne Suchbegriffe einzugeben. Sie orientiert sich dann an den Kriterien, die Sie ausgewählt haben (z. B. nach dem Land oder dem Sachgebiet).
Haben Sie in einer Kategorie kein Kriterium ausgewählt, wird die gesamte Kategorie durchsucht (z.B. alle Sachgebiete oder alle Länder).