Interview mit Alexander Khounani, Keysight Technologies Fusion Engine und KI simulieren menschliche Hände und Augen

Das Gespräch führte Dipl.-Ing. (FH) Hendrik Härter 6 min Lesedauer

Anbieter zum Thema

Künstliche Intelligenz wird immer mehr zu einem integralen Bestandteil der Testautomatisierung. Zur Testanalyse gehört auch die Integration eines digitalen Twin-Modells. Unser Experte von Keysight ist sich sicher, dass das rein manuelle Testen verschwinden wird.

Alexander Khounani ist Solution Engineer bei Keysight für den Bereich Testautomatisierung mit Sitz bei Hannover.(Bild:  Keysight Technologies)
Alexander Khounani ist Solution Engineer bei Keysight für den Bereich Testautomatisierung mit Sitz bei Hannover.
(Bild: Keysight Technologies)

Die Eggplant-Software ist Teil des umfassenden Portfolios an Simulations- und Testumgebungen von Keysight Technologies für die Automobilindustrie. Darüber hinaus wird Eggplant in der Luft- und Raumfahrt eingesetzt, wie aktuell bei der NASA-Mission Artemis für den Langzeitaufenthalt von Menschen auf dem Mond. Fehlerfreie Bedienoberflächen und Kontrollinstrumente sind dabei überlebenswichtig.

Mit anderen Worten: Eggplant ist ein universell einsetzbares Werkzeug zur Automatisierung von Testabläufen und Prozessen, insbesondere von grafischen Software-Oberflächen. Es ist agnostisch gegenüber den zu testenden Technologien, so dass Eggplant nicht nur das Fahrzeug-HMI selbst automatisiert testen kann, sondern im gleichen Testfall auch verschiedene Connected Services wie das Fahrzeug-HMI im Zusammenspiel mit einem Smartphone oder einem Webbrowser in den Test und die Validierung einbeziehen kann. Das geschieht dann jeweils mit der gleichen Technologie ohne Medienbruch und mit einheitlichem Reporting. Ein anschauliches Beispiel ist die Kopplung von Apple Car Play oder Android Automotive mit dem Fahrzeug-HMI.

Im Gespräch mit Alexander Khounani von Keysight Technologies sprechen wir unter anderem über KI-basierte Testautomatisierung, den digitalen Zwilling beim Test oder was es mit der universellen Fusion Engine auf sich hat.

Herr Khounani, was ist das Besondere an einem Modell-basierten Testansatz?

Modellbasiertes, automatisiertes Testen am Beispiel einer Infotainment-Anwendung: Aus einzelnen kleinen Aktionen mit nur wenigen Zeilen Code kann KI mehrere tausend Testfälle generieren und automatisiert abtesten.(Bild:  Keysight Technologies)
Modellbasiertes, automatisiertes Testen am Beispiel einer Infotainment-Anwendung: Aus einzelnen kleinen Aktionen mit nur wenigen Zeilen Code kann KI mehrere tausend Testfälle generieren und automatisiert abtesten.
(Bild: Keysight Technologies)

Modellbasiertes Testen bedeutet, dass Testentwickler oder auch Fachanwender einen sogenannten digitalen Zwilling einer Anwendungslandschaft in einem Zustandsmodell erstellen und diesen zur Vereinfachung des Testmanagements und zur Erhöhung der Wiederverwendbarkeit nutzen können. Stellen Sie sich dazu die verschiedenen Bildschirme einer Mensch-Maschine-Schnittstelle vor. Beispielsweise gibt es einen Hauptbildschirm mit verschiedenen Schaltflächen oder UI-Elementen. Der Radio-Button führt zum nächsten Screen mit wieder anderen Inhalten.

In der klassischen Welt wird mit langen Testskripten gearbeitet. In einem modellbasierten Ansatz kann für jede Schaltfläche oder jedes HMI-Element ein eigener Baustein definiert werden. Oft sind dies nur wenige Zeilen Code, abhängig von der benötigten Logik. In dem gezeigten Beispiel eines Infotainment-Modells handelt es sich meist um kleine Einzelaktionen, wie beispielsweise das Anklicken eines Buttons mit anschließender Validierung, ob der richtige Folgebildschirm mit dem richtigen Inhalt angezeigt wird.

Testfälle können dann als Sequenzen dieser Bausteine über verschiedene Bildschirme und Geräte der Anwendungslandschaft hinweg hinterlegt werden. Ändert sich ein Baustein, werden alle Testfälle automatisch angepasst.

Sie sprechen von einer KI-gestützten Testautomatisierung. Was bietet dieser Ansatz einem Testingenieur und wie können KI-Algorithmen dabei helfen, einen Test zu unterstützen?

Der modellbasierte Ansatz erlaubt Testmanagern einen sofortigen Einblick, welche Bereiche einer Anwendungslandschaft in welchem kombinatorischen Detailgrad getestet wurden.(Bild:  Keysight Technologies)
Der modellbasierte Ansatz erlaubt Testmanagern einen sofortigen Einblick, welche Bereiche einer Anwendungslandschaft in welchem kombinatorischen Detailgrad getestet wurden.
(Bild: Keysight Technologies)

Dies wird in der Eggplant-Welt unter zwei Aspekten realisiert. Zum einen gibt es KI-Unterstützung bei der Erstellung und Pflege von Testfällen. Das Eggplant Studio bietet KI-Werkzeuge, um Bildschirmelemente zu erfassen und zu katalogisieren. Daraus können dann schnell Modelle und Skripte generiert werden. Darüber hinaus werden KI-Algorithmen eingesetzt, um bei sich ändernden Layouts trotzdem Vorschläge für eine mögliche Anpassung der Testfälle zu generieren. Man spricht hier von Self-Healing.

Den größten Hebel bietet der Einsatz von KI jedoch beim automatisierten explorativen Testen des Digital-Twin-Modells. Keysight Eggplant ermöglicht es, das Modell einer Anwendungslandschaft in seiner Tiefe zu analysieren und mehrere Ebenen vorauszusehen. Es versteht, was im Modell möglich ist und wie sich ein Benutzer darin verhalten könnte. Dabei kann genau festgelegt werden, welchen Regeln die KI folgen soll, also ob beispielsweise bestimmte Aktionen nur begrenzt durchlaufen oder Parameter nur eingeschränkt belegt werden dürfen. Im „Autopiloten“ kann die Eggplant-KI das Modell durchtesten, neue Testfälle generieren und so die Qualität eines Produkts durch Rekombination aller Möglichkeiten auf ein neues Niveau heben – mit Berechnung der dafür benötigten Zeit im Voraus.

Manuell ist da schlichtweg nicht möglich. Ein Beispiel: Ein UI-Modell mit etwa 70 Aktionen auf etwas mehr als 20 Screens mit jeweils fünf Zeilen Testcode pro Aktion. Das sind nach Adam Riese nur 350 Zeilen Code für die Automatisierung. Aus diesen sehr einfach zu wartenden Bausteinen, die nach der Bedienlogik verknüpft sind, kann die KI aus dem Digital Twin Modell ohne weiteres Zutun in diesem Fall über 20.000 Testfälle berechnen, die sie in aufsteigender Komplexität selbstständig testen kann. Je nach Modellierbarkeit der Software sprechen wir hier von erheblichen Einsparungen im Testaufwand.

Jetzt Newsletter abonnieren

Verpassen Sie nicht unsere besten Inhalte

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung

Man muss sich das noch einmal vor Augen führen: 20.000 Testfälle, generiert aus nur 350 Zeilen Code, das ist im Verhältnis zur erreichten Testabdeckung ein verschwindend geringer Aufwand. Als mir das klar wurde, war ich begeistert. Wenn die KI explorativ im Modell läuft, garantiert sie mir zunächst die Abdeckung aller Einzelaktionen, geht dann zu Kombinationen von zwei Aktionen über und arbeitet sich zu höherer Komplexität vor. So bekomme ich zuerst die wichtigsten Informationen, und die obskuren, also nicht leicht erkennbaren Fehler, die erst durch spezielle Rekombinationen entstehen, werden mit der Zeit gefunden.

Stellen Sie sich vor, das mit manuellen Testern zu machen! Selbst in der Welt der klassischen Testautomatisierung mit linearen Abläufen bin ich als Testmanager immer noch an meine Kreativität gebunden, wenn es darum geht, mir neue Fälle auszudenken. Das Modell geht die abstrusesten Wege, die für den Endanwender am Ende möglich sind.

Was verbirgt sich hinter der universellen Fusion Engine und was ist ihre Besonderheit beim Testen von UI/UX-Systemen?

Die Fusion Engine ist das Herzstück von Keysight Eggplant. Mit mehr als 20 patentierten Verfahren ermöglicht sie es, Testsysteme aller Art anzusprechen, Bildschirminhalte technologieneutral zu erfassen und den realen Benutzer zu simulieren. Während viele andere Tools nur oder überwiegend auf Code-Ebene testen oder sich in Prozesse einklinken, erfassen wir das, was tatsächlich Pixel für Pixel auf dem Bildschirm zu sehen ist. Beispielsweise können Tools, die nur auf Code-Ebene testen, nicht erkennen, ob ein Textfeld auf dem Bildschirm für den Benutzer überhaupt nicht lesbar ist. Einfachstes Szenario: dunkelblauer Text auf schwarzem Hintergrund. Das zu erkennen kann mit anderen Testansätzen sehr aufwendig sein. Durch den Einsatz von Bild- und Texterkennung (OCR) bei Eggplant ist das bei uns alles Teil desselben einfachen Code-Einzeilers.

Kurz gesagt, wir simulieren menschliche Hände und Augen. Alles, was mit Pixeln auf einem Bildschirm dargestellt werden kann, lässt sich mit Keysight Eggplant automatisiert testen, unabhängig vom Betriebssystem. Dazu gehören Live-Bilder, Videoaufzeichnungen oder Kartensysteme. Auch fest eingebaute, rein physikalische Elemente wie LEDs im Fahrzeuginnenraum wurden bereits erfolgreich in den Testablauf integriert.

Können Sie an einem Beispiel die Vorteile des Automated Software Testing erklären?

Wir erleben immer wieder Fälle, in denen vermeintlich „gut getestete“ Kundensoftware an unerwartetem Nutzerverhalten scheitert. Gerade bei hochpreisigen Produkten wie einem Fahrzeug ist die Erwartungshaltung des Endkunden entsprechend hoch.

Der automatische Test kann jederzeit durchgeführt werden und funktioniert unter gleichen Bedingungen immer gleich, ist also regressionssicher. Auf Knopfdruck und ohne nennenswerte Wartezeit kann ein Entwickler schnell herausfinden, ob eine Codeänderung zu Problemen geführt hat. Wird mit dem Modell gearbeitet, kann dies sogar über das reine Abhaken der Testliste hinaus für viele Komplexitätsstufen der Software kombinatorisch abgesichert nachgewiesen werden. Das spart Zeit und damit Geld. Aber vielleicht noch wichtiger als die Kostenersparnis ist die höhere Zufriedenheit des Endkunden.

Geben Sie bitte noch einen Ausblick: Wie wird sich der automatische Test in den nächsten Jahren verändern?

Automatisierte Tests werden über die Produktqualität und damit über die Kundenzufriedenheit entscheiden. Der manuelle Tester hingegen hat für mich vor allem als eine Art „Detektiv“ eine Zukunft, beispielsweise im Bereich Cyber Security beim Security Testing oder PenTesting. Der rein ausführende, manuelle Test wird dagegen ganz verschwinden. Generative KI wird eine größere Rolle spielen, um personellen Engpässen einerseits und steigenden Qualitätsanforderungen andererseits zu begegnen. Spannend wird sein, inwieweit Compliance/Auditierbarkeit erreicht werden kann. Vor diesem Hintergrund sind wir überzeugt, dass unser Modellansatz den Markt prägen wird.

Qualitätsbewusste Unternehmen werden die herkömmliche Testautomatisierung, die nur auf Code-Ebene prüft und die User Experience außer Acht lässt, durch eine automatisierte visuelle Validierung ersetzen. Schließlich wird das Infotainment eines Fahrzeugs für den Kunden immer wichtiger.

Ich persönlich glaube, dass wir irgendwann von der heutigen Denkweise des Test-Runs und der Test-List wegkommen werden. Das sind Artefakte des manuellen Testens und der manuellen Automatisierung. Testabdeckung muss neu und stärker gedacht werden. Ich sehe erste Anzeichen dafür, dass in Zukunft die Automatisierung über den gesamten Produktentwicklungszyklus wichtiger wird. Dazu gehört eine stärkere automatische Schwachstellen- und Fehleranalyse, die immer mit einem gewissen Chaosfaktor einhergehen sollte.

Artikelfiles und Artikellinks

(ID:49688726)