Um den Testprozess bei der Entwicklung von Automobil-Software (z.B. mit MATLAB/Simulink) so komfortabel wie möglich zu gestalten, haben wir uns folgende Ziele gesetzt:
1. Wir befähigen Funktionsentwickler dazu, Tests auf komfortable Weise selbst erstellen und ausführen zu können. 
2. Wir entwickeln für unsere Kunden generische Tests, um unerwünschte Auswirkungen von Änderungen automatisiert aufzudecken. 
3. Wir etablieren Continuous Testing in der Cloud. 
Wir unterstützen Funktionsentwickler bei der einfachen Testfallerstellung auf Modellebene, indem wir eine spezielle grafische Benutzeroberfläche (GUI) für MATLAB/Simulink zur Verfügung stellen. Damit können Testfälle für einzelne Komponenten (Unit-Tests) basierend auf vorgefertigten Templates selbst erstellt und ausgeführt werden. Diese Tests decken vor allem funktionale Anforderungen ab. Werden sie bei jeder Änderung wiederholt und dabei auftretende Fehler sofort behoben, tragen sie erheblich zur Sicherstellung der korrekten Funktion bei.
Wir entwickeln kundenspezifische Lösungen zur Erstellung und kontinuierlichen Ausführung von generischen Testfällen. Dieser Ansatz lässt sich automatisiert auf viele verschiedene Testobjekte anwenden und ist besonders dort nützlich, wo Testobjekte beispielsweise durch manuell erstellte Tests nicht hinreichend getestet werden oder eine höhere strukturbezogene Testabdeckung erwünscht ist. Die Stimulation der Eingangssignale wird dabei automatisch generiert – stets angepasst an das jeweilige Testobjekt. Fragestellungen wie „Sind die Änderungen in der Signalantwort gewollt? Treten unbeabsichtigte Querwirkungen auf?“ sind dabei grundlegend. Ziel ist es, unerwünschte Auswirkungen von Änderungen auf das Bestandsverhalten in einzelnen Varianten zu ermitteln. Von Vorteil ist hierbei, dass virtuelle MiL-Tests unabhängig von Hardware-Konfigurationen sind. Das ermöglicht die Nutzung von einheitlich konfigurierten Testumgebungen. Allein durch Variieren der Parameter lässt sich somit eine breite Modell- und Variantenvielfalt abdecken. Wenn sichergestellt werden kann, dass diese Tests vor der Integration bereits bestanden sind, ist die Grundlage für eine hohe Software-Qualität geschaffen.
Damit das Testen nicht als Last, sondern als Unterstützung wahrgenommen wird, werden diese Tests nach jeder Modelländerung bzw. mit jeder neuen Testfallspezifikation automatisiert im Hintergrund ausgeführt. Dieser aus der „klassischen“ Software-Entwicklung bekannte Continuous Testing-Ansatz kann durch die Virtualisierung der Tests auch auf die Entwicklung im Automotive-Sektor übertragen werden. Innerhalb der spezifischen IT-Landschaft unseres Kunden entwickeln wir eine passende Automatisierungslösung. Dafür kommt auch ein Jenkins-Server zum Einsatz, der die Testausführung koordiniert. Die eigentliche Ausführung der Tests erfolgt auf einer Cloud-Infrastruktur. Der Jenkins-Server verteilt die Testaufträge an die freien Ressourcen in der Cloud. Da die Ressourcen hier durch den Cloud-Betreiber bereitgestellt werden, kann die Rechenleistung für die virtuellen Tests kurzfristig fast beliebig auf den tatsächlichen Bedarf skaliert werden. Bei dieser Lösung müssen keine physischen Rechner oder virtuellen Maschinen mehr einzeln bereitgestellt, eingerichtet und gewartet werden. Stattdessen gibt es ein zentrales Abbild, das die Basis für alle Cloud-Instanzen darstellt.
Die Testergebnisse werden zentral in TEST-GUIDE verwaltet und in verschiedenen Ansichten dargestellt. Jeder Nutzer kann durch individuelle Benachrichtigungseinstellungen konfigurieren, ob und in welchen Fällen eine E-Mail gewünscht ist.
- 4 Software-Entwickler
- 1 Teammaster
- 1 OKR-Master
- Standort Dresden