Allgemein

Testautomatisierung mit RPA – 5 Tipps zur erfolgreichen Implementierung

Durch Robotic Automation Process (RPA) entstehen neue Möglichkeiten in der Testautomatisierung. Was es dabei zu beachten gibt? – Die folgenden fünf Tipps zeigen die wichtigsten Punkte für eine erfolgreiche Implementierung.

1. Prozesse verstehen

Bevor man sich mit den Testaktivitäten auseinandersetzt, sollte das primäre Ziel des Testteams sein, die Prozesse zu verstehen. Das ist ein wichtiger Schritt, weil damit das Fundament für die entstehenden Testfälle gelegt wird. Da ohne fundiertes Wissen wichtige Komponenten für das Testen vergessen werden könnten, findet dieser Schritt typischerweise am Anfang eines Testautomatisierungsprojekts statt. Hierfür eignet es sich, die vorhandenen Prozess- und Lösungsdokumentationen zu analysieren. Wenn das Testteam ein tiefes Verständnis für die Prozesse entwickelt hat, können die relevanten Testfälle identifiziert werden.

2. Testautomatisierungsstrategie erstellen

Tests können in verschiedenen Formen auftreten: von Modul- oder Komponententests (auch Unit Tests genannt) API Schnittstellentests (typischerweise HTTP-Tests) bis zu den UI-Tests (das Testen der grafischen Oberfläche). Dementsprechend kann das Aufsetzten von Testautomatisierung auf verschiedenen Ebenen stattfinden. RPA eignet sich insbesondere für API Schnittstellentests und UI-Tests, dabei haben sich einfachere Testfälle für die Automatisierung bewährt.

Test Pyramide (Quelle: https://blog.viadee.de/testautomatisierung-und-rpa)

Eine Strategie hilft die Tests zu identifizieren, welche für die Automatisierung relevant sind. Eine Testautomatisierungsstrategie basiert auf folgenden Punkten:

  • Entscheidungsfindung beim automatisierten Testen.​​
  • Werkzeuge zur Testautomatisierung.​​
  • Testautomatisierungsprozess.​​
  • Testplanung, -design und -entwicklung.​​
  • Ausführung und Verwaltung von Testskripten.​​
  • Überprüfung und Bewertung von Testprogrammen.

Die Erstellung der Testautomatisierungsstrategie ist somit zentral. Dadurch wird der Weg definiert, um manuelle Tests zu reduzieren und infolgedessen den ROI zu rechtfertigen.

3. Richtiges RPA auswählen

Die richtige RPA-Applikation auszuwählen birgt Tücken. Auf dem Markt gibt es etliche verschiedene RPA-Applikation-Anbieter, was die Auswahl nicht vereinfacht. Der RPA-Anbieter Uipath hat beispielsweise seit dem letzten Jahr eine Testsuite lanciert, welche verschiedene Testaktivitäten, wie zum Beispiel die vereinfachte Erstellung von Regressionstests beinhaltet. Auch weitere renommierte RPA-Anbieter befassen sich zunehmend mit dieser Thematik. Folgende Kriterien dienen zur Entscheidungsfindung:

  • Bedienbarkeit
  • IT-Kenntnisse erforderlich?
  • Skalierbarkeit
  • Stabilität
  • Sicherheit
  • Technologie (Innovation, Produktportfolio)
  • Aktiver Anbieter (Support, Community etc.)
  • Features (wie z.b. Testsuite)
  • Lizenzierungsmodell (Kosten)
  • Bot-Typen: Attended / Unattended

Viele RPA-Anbieter stellen ihre Applikation als Gratis-Testversion (meistens bis 60 Tage) zur Verfügung. Zusätzlich gibt es verschiedene Vergleichsportale, wo man detaillierte Erfahrungsberichte über die Applikation findet. Es empfiehlt sich, diese Portale zu besuchen und mindestens zwei bis drei verschiedene Anbieter zu testen. Dazu eignet es sich, einen kleinen Testfall zu implementieren, um zu sehen, wie schnell man mit dem Produkt zurechtkommt. So erhält man ein gutes Gespür für die zu wählende RPA-Applikation.

 

4. Nötigen Ressourcen bereitstellen

Nicht zuletzt scheitern viele Projekte an den fehlenden Ressourcen. Ein solches Projekt braucht Zeit, insbesondere um die zu testende Applikation fachlich und technisch zu verstehen. Dies ist bei der Implementierung eines RPAs für die Testautomatisierung nicht anders. Bei vielen Unternehmen bleibt das Software-Testing unbeachtet, da es auf den ersten Blick keinen Mehrwert generiert. Schlechtes Software-Testing kann jedoch verheerende Folgen für ein Unternehmen haben. Ein Beispiel hierfür ist der Skandal an der Tokioter Börse im Jahr 2005. Je später die Fehler im Entwicklungszyklus identifiziert und analysiert werden, desto höhere Kosten können entstehen. Durch die Testautomatisierung sollen nicht nur die manuellen Teststunden reduziert werden, sondern vor allem die Qualität des Testens gesteigert werden. Die Unterstützung von allen Projektbeteiligten aus dem Management, der Entwicklung, dem Testing und den Fachbereichen ist essenziel, um das Projekt erfolgreich durchzuführen.

Zeit-Kosten-Qualität
Magisches Dreieck: Zeit – Kosten – Qualität (Quelle: https://pixabay.com/photos/triangle-quality-time-cost-3125882/)

5. Entwicklerprozesse einbetten

Es ist wichtig, die Entwickler in den Testautomatisierungsprozess mit einzubeziehen. Erst durch die Integration von CI (Continous Integration) und CD (Continous Delivery) in Kombination mit RPA kann das Potenzial voll ausgeschöpft werden. Durch diese Integration werden die definierten Testfälle gemäss der Strategie jeweils vor und nach jeder Änderung in der Applikation automatisch verarbeitet. So erhält der Entwickler ein schnelles Feedback. Dies führt wiederum zur schnelleren Auslieferung der Anforderungen und einer verbesserten Qualität des Entwicklungszyklus. Dieser Prozess soll bereits in der Entwicklung der Testautomatisierungsstrategie definiert werden.

Phasen der Continuous Integration (CI) und der Continuous Delivery (CD) (Quelle: https://www.techaheadcorp.com/blog/how-ci-cd-save-app-development-time/)

Weiterführende Links:

 

Beitrag teilen

Schreibe einen Kommentar