ConTest
FFG BRIDGE-1, 2021 – 2024
Continuous Software Testing: Solving the Oracle Problem in Production
Im Projekt ConTest wird ein grundlegend neuer Testorakelansatz für das kontinuierliche Testen bei der kontinuierlichen Weiterentwicklung von modernen softwarebasierten Systemen erforscht und neue risikobasierte Analysen der Testergebnisse zur Verbesserung der Erklärbarkeit und Unterstützung der Qualitätssicherung entwickelt.
Kontext und Motivation
Moderne Softwareanwendungen wie KI-Systeme, Cloud-Software oder Microservices werden auf der Basis kontinuierlicher Entwicklungsprozesse weiterentwickelt und neue Funktionen und Updates können so den Benutzern schnell zur Verfügung gestellt werden. Die Qualitätssicherung und das Testen werden damit ebenfalls zu kontinuierlichen Prozessen und vor neue noch nicht gelöste Herausforderungen gestellt. So genügt es nicht, dass Funktionen und Updates nur vor der Freigabe getestet werden, in der Annahme, das System des Benutzers werde sich genauso wie das Testsystem verhalten. Moderne Systeme laufen in dynamischen und verteilten Umgebungen - vom Edge-Device bis zur Cloud - und zum Testzeitpunkt ist häufig noch gar nicht absehbar, wie die Benutzer das System im Feld tatsächlich verwenden werden und mit welchen Daten das System konfrontiert sein wird. Kontinuierliches Testen bedeutet daher, dass die Testphase nicht mit der Freigabe endet, sondern bis in der Phase des laufenden Betriebes ausgedehnt wird.
Der kontinuierliche Ansatz stellt jedoch den Test vor die schwierige Frage: Wie kann für ein Ergebnis einer zukünftigen, zum aktuellen Zeitpunkt noch nicht vorhersehbaren Verwendung des Systems, entschieden werden, ob dieses richtig oder falsch ist?
Ziele und Innovation
Ziel dieses Projekts ist die Forschung an einem neuen Ansatz zur Beurteilung der Korrektheit von Anwendungsszenarien und Ergebnissen im laufenden Betrieb.
Beim kontinuierlichen Testen beginnt die eigentliche Testphase, wenn die Benutzer das System aktiv verwenden und dabei Daten über die Nutzung und das Systemverhalten generieren. Jede Verwendung entspricht dabei einem neuen Testfall. Um beurteilen zu können, ob so ein Testfall erfolgreich oder fehlgeschlagen ist, werden die aufgezeichneten Ergebnisse aus mehreren bzw. vielen Verwendungen miteinander verglichen und die Abweichungen mittels statistischer Distanzmaße bewertet. Die Qualitätsbeurteilung erfolgt darauf aufbauend anhand eines Bayes-Risikomodells, mit dem die statistischen Messergebnisse auf allgemeine und anwendungsspezifische Qualitätsziele abgebildet und interpretiert werden können.
Projektpartner
Das Projekt wird von einem Konsortium von drei Partnern durchgeführt:
- Universität Innsbruck, Institut für Informatik (Projektleitung)
- Software Competence Center Hagenberg
- Gepardec IT Services GmbH
Fördergeber
Das Projekt wird von der österreichischen Forschungsförderungsgesellschaft FFG im Rahmen des Programms BRIDGE 1 gefördert.
Projektdauer
36 Monate (Oktober 2021 - September 2024)