-
Die vorliegende Erfindung betrifft ein Verfahren zum Auswählen von Testfällen für eine Simulation und Testumgebung. Die vorliegende Erfindung betrifft darüber hinaus eine entsprechende Vorrichtung, ein entsprechendes Computerprogramm sowie ein entsprechendes Speichermedium.
-
Stand der Technik
-
In der Softwaretechnik wird die Nutzung von Modellen zur Automatisierung von Testaktivitäten und zur Generierung von Testartefakten im Testprozess unter dem Oberbegriff „modellbasiertes Testen“ (model-based testing, MBT) zusammengefasst. Hinlänglich bekannt ist beispielsweise die Generierung von Testfällen aus Modellen, die das Sollverhalten des zu testenden Systems beschreiben.
-
Insbesondere eingebettete Systeme (embedded systems) sind auf schlüssige Eingangssignale von Sensoren angewiesen und stimulieren wiederum ihre Umwelt durch Ausgangssignale an unterschiedlichste Aktoren. Im Zuge der Verifikation und vorgelagerter Entwicklungsphasen eines solchen Systems wird daher in einer Regelschleife dessen Modell (model in the loop, MiL),
Software (software in the loop, SiL), Prozessor (processor in the loop, PiL) oder gesamte Hardware (hardware in the loop, HiL) gemeinsam mit einem Modell der Umgebung simuliert. In der Fahrzeugtechnik werden diesem Prinzip entsprechende Simulatoren zur Prüfung elektronischer Steuergeräte je nach Testphase und -objekt mitunter als Komponenten-, Modul- oder Integrationsprüfstände bezeichnet.
-
DE10303489A1 offenbart ein derartiges Verfahren zum Testen von Software einer Steuereinheit eines Fahrzeugs, bei dem durch ein Testsystem eine von der Steuereinheit steuerbare Regelstrecke wenigstens teilweise simuliert wird, indem Ausgangssignale von der Steuereinheit erzeugt werden und diese Ausgangssignale der Steuereinheit zu ersten Hardware-Bausteinen über eine erste Verbindung übertragen werden und Signale von zweiten Hardware-Bausteinen als Eingangssignale zur Steuereinheit über eine zweite Verbindung übertragen werden, wobei die Ausgangssignale als erste Steuerwerte in der Software bereitgestellt werden und zusätzlich über eine Kommunikationsschnittstelle in Echtzeit bezogen auf die Regelstrecke zum Testsystem übertragen werden.
-
Derartige Simulationen sind auf verschiedenen Gebieten der Technik verbreitet und finden beispielsweise Einsatz, um eingebettete Systeme in Elektrowerkzeugen, Motorsteuergeräten für Antriebs-, Lenk- und Bremssysteme oder gar autonomen Fahrzeugen in frühen Phasen ihrer Entwicklung auf Tauglichkeit zu prüfen. Dennoch werden die Ergebnisse von Simulationsmodellen nach dem Stand der Technik aufgrund fehlenden Vertrauens in ihre Zuverlässigkeit nur begrenzt in Freigabeentscheidungen einbezogen.
-
Offenbarung der Erfindung
-
Die Erfindung stellt ein Verfahren zum Auswählen von Testfällen für eine Simulation und Testumgebung, eine Vorrichtung, ein Computerprogramm sowie ein entsprechendes Speichermedium gemäß den unabhängigen Ansprüchen bereit.
-
Der erfindungsgemäße Ansatz fußt auf der Erkenntnis, dass jeder Testfall der Überprüfung einer spezifizierten Eigenschaft des Testobjektes dient. Diese Anforderung (requirement) an das zu testende System ist beispielsweise dann erfüllt, wenn eine Leistungskennzahl (key performance indicator, KPI) oder ähnliche Größe eine vorgegebene Schwelle überschreitet. Diese Kennzahl unterliegt hierbei verschiedenen Unsicherheiten, die durch das System selbst, statistische Streuungen von Parametern oder Modellfehler verursacht sein können.
-
In 1 beispielsweise ist im markierten Wertebereich eines Testfallparameters (10) das Risiko groß, dass der Testfall nicht erfüllt wird, da der betrachtete KPI (11) den betreffenden Grenzwert (12) nur knapp übersteigt. Um für einen vorgegebenen Punkt im Parameterraum den KPI (11) sowie das Maß der diesbezüglichen Unsicherheit zu bestimmen, müssen eine oder mehrere Messungen sowie eine oder mehrere Simulationen durchgeführt werden. In der Praxis kann jedoch nur eine begrenzte Zahl von Punkten im Parameterraum betrachtet werden. Nach dem Stand der Technik wird typischerweise das suchbasierte Testen (search-based testing, SBT) verwendet, um in einem iterativen Prozess anhand vorgegebener Kriterien den jeweils nächsten Punkt im Parameterraum zu bestimmen, an dem eine Simulation bzw. ein reales Experiment durchgeführt werden soll. Simulationsmodell (13) und Realität (14) weichen in diesem künstlichen Beispiel lokal voneinander ab. Im Modell (13) werden jedoch die wesentlichen physikalischen Effekte abgebildet; deshalb kann aus der Struktur des Modells (13) Information zum Auffinden kritischer Testfälle in der Realität (14) abgeleitet werden.
-
Denkbar wäre hier ein Ansatz zur Aufteilung des Testraums unter simulationsbasierten und realen Test, der auf der Verwendung von Metamodellen beruht. Für die aus Simulationen und realen Tests gewonnenen Daten würden hierzu zwei unabhängige Metamodelle generiert. Die Information aus beiden Metamodellen wäre zu kombinieren, um weitere Testpunkte für reale und simulationsbasierte Test abzuleiten. Ein solches Verfahren stößt jedoch an seine Grenzen, wenn - wie im dargestellten Beispiel - das Simulationsmodell lokal stark von der Realität abweicht.
-
Ein Vorzug der erfindungsgemäßen Lösung liegt vor diesem Hintergrund in der eröffneten Möglichkeit, die Informationen aus realen und simulationsbasierten Tests zu kombinieren, auch wenn das Simulationsmodell starke quantitative Abweichungen von der Realität aufweist. Der vorgeschlagene Ansatz lässt sich selbst dann anwenden, wenn die Signalqualität gering ist. Einzige Voraussetzung ist, dass das Modell grundsätzlich die physikalischen Zusammenhänge im Parameterraum widerspiegelt.
-
Durch die in den abhängigen Ansprüchen aufgeführten Maßnahmen sind vorteilhafte Weiterbildungen und Verbesserungen des im unabhängigen Anspruch angegebenen Grundgedankens möglich. So kann vorgesehen sein, auf Grundlage realer Tests ein Metamodell durch Bayessche Optimierung zu bilden.
-
Gemäß einer weiteren Ausführungsform kann vorgesehen sein, durch Fitting oder anderweitige Ausgleichsrechnung aus einer Auswahl von Kerneln den besten Kerneltyp auszuwählen und die zugehörigen Hyperparameter zu optimieren. Das resultierende Metamodell enthält implizit die Information über das Systemverhalten. Im nächsten Schritt werden simulativ weitere Punkte betrachtet; Hyperparameter und Kerneltyp bleiben dabei unverändert und werden nicht auf Grundlage von Simulationsdaten angepasst. Das Metamodell für die Simulationsdaten wird dazu verwendet, Kandidaten für weitere reale Tests zu finden.
-
Gemäß einer weiteren Ausführungsform kann vorgesehen sein, das System in den ausgewählten Testfällen (21) einem Sicherheitstest zu unterziehen und es abhängig von dessen Ergebnissen automatisch zu verbessern. Eine derartige Ausgestaltung reduziert stark den Messaufwand und Simulationsaufwand und führt zu schnelleren Testergebnissen und damit zu zuverlässigeren und sicheren Produkten.
-
Ein Kerngedanke des vorgeschlagenen Verfahrens liegt darin, dass die beiden Metamodelle getrennt voneinander behandelt werden, weil es lokal in Absolutwerten große Unterschiede zwischen Realität und Simulation geben kann. Es wird lediglich angenommen, dass sowohl in der Realität als auch in der Simulation die gleichen Bereiche im Parameterraum vergleichsweise kritische Testfälle enthalten.
-
Figurenliste
-
Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und in der nachfolgenden Beschreibung näher erläutert. Es zeigt:
- 1 die Voraussetzung eines erfindungsgemäßen Verfahrens.
- 2 eine erste Verfahrensvariante.
- 3 eine zweite Verfahrensvariante.
- 4 schematisch eine Arbeitsstation gemäß einer weiteren Ausführungsform der Erfindung.
-
Ausführungsformen der Erfindung
-
2 illustriert die erste Variante (20) eines erfindungsgemäßen Verfahrens (20, 30). Durch Simulation (22) wird ein Ersatzmodell (24) durch Bayessche Optimierung (Bayes optimization) gleichsam „eingelernt“. In zunächst herkömmlicher Weise werden hierzu unterschiedliche Kerneltypen miteinander verglichen und die Hyperparameter optimiert (25).
-
Anschließend werden Kernel und Hyperparameter dazu verwendet, ein neues Ersatzmodell (24) auf Grundlage realer Tests (23) zu bestimmen. Abweichend vom erstgenannten Metamodell werden in diesem neuen Modell (24) Kernel und Hyperparameter nicht weiter angepasst, sondern dauerhaft beibehalten (26, 27). Basierend auf realen Tests (23) werden durch SBT (29) oder anderweitige Optimierung kritische Testfälle (21) gesucht.
-
Dieses Verfahren (20) kann zu der in 3 dargestellten Variante (30) erweitert werden: Aus den realen Tests (23) wird abgeleitet, in welchen Parameterbereichen die Anforderungen eines bestimmten Testfalls (21) nur knapp erfüllt wird und letzterer in diesem Sinne als besonders „kritisch“ einzustufen ist. Die entsprechenden Punkte im Parameterraum und deren Umgebung werden sodannin der Simulation (22) näher untersucht und Kernel sowie Hyperparameter weiter angepasst (25), um die Qualität des Metamodells weiter zu verbessern. Die besagten Schritte können beliebig oft wiederholt werden.
-
Die dargestellten Verfahren (20, 30) können auch modifiziert werden, indem die Daten aus Simulation (22) und realen Tests (23) in umgekehrter Weise eingesetzt werden.
-
Diese Verfahren (20, 30) können beispielsweise in Software oder Hardware oder in einer Mischform aus Software und Hardware beispielsweise in einem Arbeitsplatzrechner (40) implementiert sein, wie die schematische Darstellung der 4 verdeutlicht.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-