Blog: Should I test the Model or the Code?

Lesezeit: 5 min.; Gesamtbewertung: +++oo; Technische Tiefe: Skilled; Zugang: frei: Sprache: engl.

In dem Blog „Should I test the Model or the Code?“ von Wolfgang Meincke, Senior Application Engineer bei BTC Embedded Systems wird die Frage untersucht, ob es effektiver ist, Modelle oder den generierten Code in der Softwareentwicklung zu testen und was der ISO 26262 Standard zu diesem Thema sagt. Der Autor hebt die Vor- und Nachteile beider Ansätze hervor und betont die Bedeutung einer gut durchdachten Teststrategie.

Bei der modellbasierten Softwareentwicklung können die Tests auf Modell- oder Codeebene durchgeführt werden. Modelle testen bedeutet, dass Tests auf einer höheren Abstraktionsebene durchgeführt werden, was frühzeitig im Entwicklungsprozess Fehler identifizieren kann.

Der Test des Codes hingegen ist näher an der endgültigen Implementierung und deckt somit auch Fehler ab, die bei der Codegenerierung entstehen könnten. Der Autor empfiehlt eine Kombination beider Ansätze, um die Stärken von Modell- und Code-Tests zu nutzen und auch, um ISO 26262-konform zu bleiben. Um den zusätzlichen Aufwand für das Testen von Modell und Code zu bewältigen, muss das Testwerkzeug so konzipiert sein, dass es sowohl das modellbasierte Testen als auch das Testen von Code unterstützt.

Der Autor schlägt vor, zuerst auf Modellebene zu testen und dann detailliertere Tests auf Codeebene durchzuführen, indem ein Back-to-Back-Test zusätzlich durchgeführt wird, um sicherzustellen, dass das Modell korrekt in Code übersetzt wird. Dieser zusätzliche Schritt kann vollständig automatisiert werden. Abschließend betont er, dass die Wahl der Teststrategie stark von den spezifischen Anforderungen des Projekts abhängt. Faktoren wie Sicherheitsanforderungen, Entwicklungszeit und verfügbare Ressourcen sollten bei der Entscheidung berücksichtigt werden. (oe)

Link zum Beitrag