Kommentar von Marco Nowak und Steven Wrage, Innobis AG KI im Softwaretesting – eine Disziplin im Umbruch

Von Marco Nowak und Steven Wrage 4 min Lesedauer

Anbieter zum Thema

Die rasante Entwicklung Künstlicher Intelligenz (KI) hat in den vergangenen Jahren nahezu alle Bereiche der Technologie und Wirtschaft erfasst. Insbesondere der Durchbruch von Large Language Models (LLMs) löste dabei eine disruptive Veränderung aus. Auch im Softwaretesting zeichnet sich ein deutlicher Trend ab: KI wird immer relevanter und verändert die Art und Weise, wie wir Software testen.

Die Autoren: Marco Nowak (links) ist Leiter Testing und Steven Wrage ist Senior Consultant bei der Innobis AG(Bild:  Innobis AG)
Die Autoren: Marco Nowak (links) ist Leiter Testing und Steven Wrage ist Senior Consultant bei der Innobis AG
(Bild: Innobis AG)

Ein zentraler Aspekt der KI-Unterstützung im Softwaretesting ist die Bedeutung von Prompts. Prompts sind die grundlegende Art und Weise, wie wir mit Large Language Models (LLMs) interagieren. Sie dienen als Anweisungen, um die gewünschten Ergebnisse von der KI zu erhalten. Sie sind somit die Eingabeaufforderungen, die verwendet werden, um KI-Modelle bei der Durchführung von Softwaretests zu steuern und zu beeinflussen.

Dabei ist es wichtig zu unterscheiden, dass Prompts hauptsächlich in der Testvorbereitung und -analyse als Unterstützungswerkzeug eingesetzt werden und nicht die Tests durchführen. Im Kontext des Testens können Prompts verwendet werden, um Testfälle zu generieren, Testdaten zu erstellen oder die Testergebnisse zu analysieren. Die Qualität der Prompts hat einen direkten Einfluss auf die Qualität der Ergebnisartefakte, wie z. B. die erzeugten Testfälle. Daher ist es entscheidend, Prompts sorgfältig zu formulieren und zu optimieren, um die Effektivität der KI-gestützten Softwaretests zu maximieren.

KI-Modelle für das Testing

Es gibt eine Vielzahl von KI-Modellen, die im Testing eingesetzt werden können. Diese Modelle lassen sich grob in Online- und Offline-Modelle unterteilen:

Online-Modelle: Diese Modelle sind über das Internet zugänglich und werden für gewöhnlich als Cloud-Dienste angeboten. Beispiele hierfür sind die APIs von OpenAI (wie ChatGPT) und Google Gemini. Online-Modelle bieten den Vorteil, dass tagesaktuelle Informationen bei den Ergebnissen berücksichtigt werden können und daher eine hohe Aktualität aufweisen. Der Nachteil ist hingegen, dass bei der Nutzung vertrauliche Daten ins Internet gelangen könnten.

Offline-Modelle: Diese Modelle können lokal auf dem eigenen Rechner oder Server installiert werden. Sie bieten den Vorteil, dass sie unabhängig vom Internet funktionieren und so eine bessere Kontrolle über die Daten ermöglichen. Ein Beispiel hierfür ist Llama von Meta, das sowohl offline als auch online genutzt werden kann. Ein Nachteil ist jedoch, dass der Datensatz, auf dem das Modell trainiert wurde, auf einem festen Zeitpunkt basiert und daher für aktuelle Aufgaben möglicherweise veraltet ist.

Themengebiete im KI-Testing

KI kann in einer Vielzahl von Themengebieten im Testing eingesetzt werden. Um diese zu gliedern, können wir zwischen solchen KI-Anwendungen unterscheiden, die das Testmanagement unterstützen, und jenen, die operative Testaufgaben übernehmen.

KI-Anwendungen, die das Testmanagement unterstützen: KI kann verwendet werden bei der

  • Testfallgenerierung, um automatisch Testfälle aus Anforderungen, Spezifikationen oder User Stories zu generieren.
  • Testdatengenerierung, um realistische und vielfältige Testdaten zu erstellen, die alle relevanten Szenarien abdecken.
  • Analyse, um Testergebnisse zu analysieren und die Testumgebung vorzubereiten.

KI-Anwendungen, die operative Testaufgaben übernehmen

KI kann verwendet werden bei der/beim

  • Testautomatisierung, um Testskripte zu erstellen und auszuführen, wodurch der Testprozess beschleunigt und effizienter wird.
  • Fehlererkennung, um Anomalien und Fehler in Softwareanwendungen zu erkennen, die von herkömmlichen Testmethoden möglicherweise übersehen werden.
  • Usability-Testing, das Benutzerverhalten zu analysieren und Usability-Probleme zu identifizieren.
  • Performance-Testing, um die Leistung von Softwareanwendungen unter verschiedenen Lastbedingungen zu bewerten.
  • Security Testing, um Sicherheitslücken in Software zu identifizieren.

Aktuelle Bestandsaufnahme und Forschung

Die Anwendung von KI im Testing befindet sich noch in einem frühen Stadium, aber die Fortschritte sind rasant. Viele Unternehmen und Forschungseinrichtungen arbeiten daran, KI-gestützte Testwerkzeuge und -methoden zu entwickeln.

Einige der aktuellen Forschungsschwerpunkte sind:

  • Die Verbesserung der Genauigkeit und Zuverlässigkeit von KI-gestützten Testwerkzeugen.
  • Die Entwicklung von Methoden zur Bewertung der Qualität von KI-generierten Testdaten.

Unterschiede zum klassischen Testen

Das KI-Testing unterscheidet sich in vom klassischen Testen mit Blick auf die

  • Automatisierung: KI ermöglicht eine höhere Automatisierung des Testprozesses, wodurch Zeit und Ressourcen gespart werden können.
  • Datengetriebenheit: KI-Modelle lernen aus Daten und können daher Muster und Anomalien erkennen, die von herkömmlichen Testmethoden möglicherweise übersehen werden.
  • Anpassungsfähigkeit: KI-Modelle können an veränderte Anforderungen und Umgebungen angepasst werden, wodurch das Testen flexibler und effizienter wird.

KI in gängigen Testtools

Große Softwareanbieter integrieren zunehmend KI in ihre Produkte. Darüber beinhalten auch gängige Testtools wie Functional Testing, Tosca, JUnit und TestComplete zunehmend KI-Funktionen. Das ermöglicht es Testern, KI-gestützte Testmethoden in ihre bestehenden Testprozesse zu integrieren.

Fazit

KI-Testing ist ein vielversprechendes Gebiet, das das Potenzial hat, die Softwarequalitätssicherung grundlegend zu verändern. Durch den Einsatz von KI können Testprozesse automatisiert, effizienter und effektiver gestaltet werden. Es ist jedoch wichtig, die Herausforderungen und Risiken des KI-Testings zu berücksichtigen und sicherzustellen, dass KI-gestützte Testwerkzeuge und -methoden verantwortungsbewusst eingesetzt werden. Dabei ist es entscheidend zu betonen, dass KI den Menschen nicht überflüssig macht, sondern ihn vielmehr unterstützt. KI liefert eine Vielzahl von Ergebnissen und Analysen, die jedoch von Experten bewertet und gegebenenfalls detailliert werden müssen. Die menschliche Expertise bleibt unverzichtbar, um die Qualität und Genauigkeit der KI-gestützten Testergebnisse sicherzustellen und fundierte Entscheidungen zu treffen.

Dieser Beitrag erschien zuerst auf unserem Partnerportal Bigdata-Insider.de.

Artikelfiles und Artikellinks

(ID:50460455)

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