Zuletzt aktualisiert am 09. August 2020 – Guy Arieli, CTO Quality
Continuous Testing

Roboterübersicht

Robot Framework ist ein Testautomatisierung Framework, das es QA-Teams erleichtert, Abnahmetests und Akzeptanztest-gesteuerte Entwicklungsumgebungen (ATDD) zu verwalten. Das Tool wurde erstmals 2005 von Pekka Klarck entworfen und im selben Jahr bei Nokia Networks entwickelt. Es wurde 2008 als Open Source angeboten. Robot ist in der Python-Sprache geschrieben und bietet ein umfangreiches Ökosystem an Bibliotheken und Tools und ermöglicht gleichzeitig die Integration in praktisch jede Testautomatisierungslösung. Das Framework läuft auch auf IronPython (.NET) und Jython (JVM). Es ist auch plattformunabhängig und anwendungsunabhängig. Das Tool verfügt über eine einfache Syntax und verwendet einen schlüsselwortgesteuerten Testansatz. Die Schlüsselwörter sind für Menschen lesbar. Sie können die integrierten Schlüsselwörter verwenden oder eines von Grund auf erstellen. Derzeit kümmert sich die Robot Framework Foundation um die Entwicklung des Tools.

Was ist ein Akzeptanztest?

Abnahmetests ist Teil eines Testprojekts, das prüft, ob die Software den Funktionsspezifikationen und Geschäftsanforderungen entspricht, bevor sie in die Produktion geht. In einem typischen Testpipeline, Unit-Tests werden zuerst ausgeführt. Ihnen folgt Integrationstests und Systemtests. Abschließend werden Abnahmetests durchgeführt, um sicherzustellen, dass die Software alle Geschäftsanforderungen erfüllt, bevor sie an Endbenutzer geliefert wird. Abnahmetests werden normalerweise durch die Durchführung von Black-Box-Tests durchgeführt.

Abnahmetests werden beispielsweise auf zwei Arten durchgeführt:

  1. Interne Abnahmeprüfung: Die Mitglieder des Softwareunternehmens, die nicht an der Entwicklung dieser Software beteiligt waren, werden sie testen.
  2. Externe Abnahmeprüfung: Mitglieder außerhalb des Softwareunternehmens werden es testen (hauptsächlich Kunden, die diese Software bestellt haben). Später werden Endbenutzer es testen.

Was ist Acceptance Test-Driven Development (ATDD)?

Acceptance Test-Driven Development (ATDD) ist ein benutzerzentrierter Ansatz zur Testautomatisierung. In einer testgetriebenen Entwicklungsumgebung (BDD) schreiben Entwickler Tests aus ihrer Perspektive. ATDD funktioniert umgekehrt. Hier arbeiten verschiedene Teams wie Entwickler, Qualitätssicherung und Kunden an der Vorbereitung von Abnahmetestfällen zusammen, bevor sie die Funktionalität in die Anwendung integrieren. Mit einem benutzerzentrierten Ansatz und einer nahtlosen Zusammenarbeit zwischen Entwicklungsteams und Funktionsexperten haben entwickelte Anwendungen eine höhere Chance, Akzeptanzkriterien zu erfüllen. Mit ATDD werden Funktionstests einfach und effektiv.

Verhaltensgesteuerte Entwicklung (BDD) und ATDD weisen viele Gemeinsamkeiten auf. Sie unterscheiden sich jedoch in einem wesentlichen Aspekt. BDD konzentriert sich auf das Verhalten einer Funktion, während ATDD sich auf Anforderungen konzentriert.

Die Geschichte der akzeptanztestgesteuerten Entwicklung

Es war Kent Beck, der das Konzept einer Akzeptanztest-gesteuerten Entwicklungsumgebung erstmals 2003 in seinem Buch „Test Driven Development: By Beispiel“ erwähnte. Er meinte, dass dies praktisch nicht möglich sei. Die Beliebtheit des Open-Source-Testautomatisierungstools Fitnesse, das eine gute Zusammenarbeit zwischen Geschäftsinteressenten ermöglichte, machte ATDD jedoch zur Realität.

ATDD bietet ein klares Verständnis der Benutzeranforderungen einer Anwendung und dient gleichzeitig als Leitfaden für das gesamte Entwicklungsprojekt. Es erleichtert auch eine gute Zusammenarbeit zwischen verschiedenen Teams. Zu den für ATDD verwendeten Tools gehören Robot Framework, TestNG, Fitnesse, Thucydides und EasyB.

Roboter-Framework für Akzeptanztests und ATDD

Bevor Sie mit diesem Framework fortfahren, ist es wichtig, einige der Schlüsselaspekte des Tools zu verstehen.

  1. Tabellenbasierte Testfälle: Mit dem Tool können Sie Testfälle mithilfe von Schlüsselwörtern in einem einfachen Tabellenformat schreiben.
  2. Stichwort: Das Tool bietet integrierte Schlüsselwörter zum Schreiben von Testfällen. Sie können auch Schlüsselwörter aus Open-Source-Bibliotheken importieren oder eigene Schlüsselwörter erstellen.
  3. Bibliotheken: Das Tool unterstützt eine Reihe von Bibliotheken wie Selenium-Bibliothek, iOS-Bibliothek, Debug-Bibliothek, FTP-Bibliothek usw.
  4. Ressourcen: Mit dem Tool können Sie Roboterdateien mit Schlüsselwörtern aus externen Quellen importieren.
  5. Variablen: Das Tool unterstützt drei Arten von Variablen; Skalarvariable, Wörterbuchvariable und Listenvariable.
  6. Stichworte: Mit dem Tool können Sie Testfälle markieren, sodass Sie sie beim Ausführen von Testsuiten hinzufügen oder weglassen können.
  7. Berichte und Protokolle: Das Tool stellt die Details der Tests in Form von HTML- und Protokolldateien bereit.

Erste Schritte mit Robot Framework

Hier sind die Voraussetzungen für die Ausführung dieses Akzeptanztest-Frameworks.

  1. Python mit PIP
  2. Roboter-Framework
  3. wxPython
  4. RIDE

Schritt 1: Installieren Sie Python

Besuchen Sie die folgende Website, um Python-Software herunterzuladen.

https://www.python.org/downloads/

Laden Sie die neueste Version für Ihr Betriebssystem herunter (z. B. Windows).

Roboter-Framework Python

Doppelklicken Sie auf die Python-Software, um die Installation zu starten.

Robot Framework Python 32 Bit installieren

Sie können auf „Jetzt installieren“ klicken, um das Standardpaket zu installieren. Es kommt mit Pip, IDLE und Dokumentation. Alternativ können Sie „Installation anpassen“ wählen, um die gewünschten Funktionen auszuwählen.

Beachten Sie, dass das Setup die Option „Python 3.8 zu PATH hinzufügen“ bietet. Wenn Sie dieses Kontrollkästchen aktivieren, aktualisiert das Tool automatisch den Pfad von Python in Umgebungsvariablen.

Erweiterte Python-Optionen

Passen Sie die Installationsoptionen an, wählen Sie den Speicherort und klicken Sie auf „Installieren“, um den Installationsvorgang zu starten.

Python-Setup-Fortschritt

Sobald Sie fertig sind, sehen Sie einen Dankesbrief für Mark Hammond, der zum Python-Windows-Tool beigetragen hat.

Python-Setup erfolgreich

Um zu überprüfen, ob Python und pip korrekt installiert sind, öffnen Sie die Eingabeaufforderung und führen Sie den Versionsbefehl aus.

  • Python-Version
  • Pip-Version

Beachten Sie, dass pip standardmäßig zusammen mit Python installiert wird.

Python-Pip

Jetzt sind Python und Pip installiert und einsatzbereit.

Schritt 2: Umgebungsvariablen konfigurieren

Nach der Installation von Python und pip sollten Sie Umgebungsvariablen konfigurieren, indem Sie den Pfad hinzufügen. Um dies zu tun,

  • Gehen Sie zu System – > Erweiterte Systemeinstellungen – > Erweitert – > Umgebungsvariablen

Umgebungsvariablen

Fügen Sie den Pfad des Ordners, in dem Python installiert ist, zum Abschnitt „Systemvariablen“ und zum Abschnitt „Benutzervariablen“ hinzu. Hier sehen Sie, dass der Pfad bereits aktualisiert wurde, da diese Option bei der Installation von Python ausgewählt wurde.

Schritt 3: Robot Framework installieren

Öffnen Sie die Eingabeaufforderung, navigieren Sie zum Python-Ordner und geben Sie den folgenden Befehl ein:

  • Pip installiert das Robotframework

Robotframework installieren

Robot Framework wurde erfolgreich installiert. Sie können es mit dem Versionsbefehl überprüfen.

  • Roboter-Version

Schritt 4: Installieren Sie wxPython

Laden Sie die wxPython-Software über den folgenden Link herunter:

Öffnen Sie die Eingabeaufforderung und geben Sie den folgenden Befehl ein:

  • Pip install –u wxPython

Installation des Robotergerüsts

Jetzt wurde wxPython Version 4.1.0 erfolgreich installiert.

Schritt 5: RIDE installieren

Um RIDE zu installieren, öffnen Sie die Eingabeaufforderung und geben Sie den folgenden Befehl ein.

  • pip install robotframework-ride

Robotframework installieren

Jetzt ist RIDE einsatzbereit.

Fahrbereit

Um RIDE zu öffnen, öffnen Sie die Eingabeaufforderung und geben Sie den folgenden Befehl ein:

  • ride.py

Die neueste Version von Python, also 3.8.1, unterstützt RIDE nicht. Auf den Future Ride 2.0 muss man warten. Sie können die Beta-Version herunterladen released im Juli 2020 von der GitHub-Site hier:

https://github.com/robotframework/RIDE/releases

Alternativ können Sie eine Eingabeaufforderung öffnen und pip verwenden, um die Beta-Ride-Version zu installieren

  • pip install –pre-upgrade Robot Framework-ride==2.0b1

pip installieren

Der Pip installiert die Ride-Betaversion.

Pip-Ride-Variablen

Öffnen Sie nun die Eingabeaufforderung und geben Sie den folgenden Befehl ein, um den RIDE-Editor zu öffnen.

  • ride.py

Willkommen zum Mitfahren

Ausführen Ihres ersten Testfalls mit Robot Framework

Um Ihren ersten Testfall auszuführen, öffnen Sie die RIDE-IDE über den Verknüpfungslink auf dem Windows-Desktop. Alternativ können Sie RIDE auch über die Befehlszeilenschnittstelle öffnen.

Öffnen Sie die Eingabeaufforderung und geben Sie den folgenden Befehl ein.

  • ride.py

Editor für Roboter-Framework-Testdaten

Klicken Sie auf Datei -> Neues Projekt

Roboter-Framework neues Projekt

Geben Sie einen Namen für Ihr Projekt ein und klicken Sie auf OK.

Geben Sie den Namen des Roboter-Frameworks ein

Den Namen Ihres Testprojekts finden Sie im Menü auf der linken Seite unter Testsuiten. Klicken Sie mit der rechten Maustaste auf das Testprojekt und wählen Sie „Neuer Testfall“.

Roboter neuer Testfall

Geben Sie einen Namen für Ihren Testfall ein und klicken Sie auf OK.

Name des Testfalls

Klicken Sie nun auf den Dokumentationsbildschirm, um die Details des Testfalls zu dokumentieren.

Testfall Roboter-Experitest

Mit Ride können Sie Skripte in tabellarischer Form schreiben. Sie können Schlüsselwörter und Werte für jedes Schlüsselwort hinzufügen. Geben Sie beispielsweise das Schlüsselwort „log“ ein und protokollieren Sie die Details des Tests.

experitest Robotertest

Klicken Sie auf Speichern, um Ihren Testfall zu speichern.

Jetzt können Sie auf „Start“ klicken, um den Testfall auszuführen. Alternativ können Sie diesen Testfall über die Befehlszeilenschnittstelle ausführen.

Öffnen Sie die Eingabeaufforderung und navigieren Sie zum Ordner des gespeicherten Testfalls. Die Datei wird hier im Ordner „scripts“ im Projektverzeichnis des Robot Framework gespeichert.

  • robot -T Experitest1.robot

Roboter-Framework-Skript

Der Testfall wurde erfolgreich ausgeführt. RIDE erstellt außerdem die Ausgabedatei im XML-Format und die Berichts- und Protokolldateien im HTML-Format. Sie können den Bericht überprüfen, indem Sie die HTML-Datei öffnen. Sie können die HTML-Datei direkt in Windows öffnen oder den Explorer über die Eingabeaufforderung aufrufen. Überprüfen Sie den Namen des Berichts und geben Sie den folgenden Befehl in die Eingabeaufforderung ein

  • Starten Sie report-20200729-202047.html

Normalerweise speichert die Fahrt den Bericht unter Verwendung der Daten im Format JJJJ/MM/TT und der Uhrzeit im Format HHMMSS.

experitest Testbericht

Um das Testausführungsprotokoll zu überprüfen, klicken Sie auf das Protokoll in der rechten oberen Ecke. Sie können das Protokoll auch über die CLI öffnen

  • Starten Sie log-20200729-202047.html

Testprotokoll

Wie Sie dem Testausführungsprotokoll entnehmen können, sind die Tests schlüsselwortgesteuert. Sie können das Schlüsselwort und die angegebene Nachricht mit der angegebenen Ebene überprüfen.

expertest Analytics

Ein weiterer Beispieltest – Testen der Anmeldeinformationen

Hier ist ein weiterer Beispieltest, der eine Website öffnet und die Anmeldeinformationen validiert. Zusätzlich wird für diesen Test eine Demo-App verwendet, bei der ein Demo-Server auf einem Localhost unter http://localhost:7272 läuft

Login-Seite

Erstellen Sie nun ein neues Projekt und einen Testfall und fügen Sie den folgenden Code hinzu.

*** Einstellungen ***

  • Dokumentation Experitest-Beispieltest mit SeleniumLibrary.
  • Bibliothek SeleniumLibrary

*** Variablen ***

*** Testfälle ***

  • Gültiges Login
  • Öffnen Sie den Browser, um sich anzumelden
  • Demo zur Eingabe des Benutzernamens
  • Eingabe-Passwort-Modus
  • Anmeldeinformationen einreichen
  • Die Willkommensseite sollte geöffnet sein
  • [Teardown] Browser schließen

*** Schlüsselwörter ***

  • Öffnen Sie den Browser, um sich anzumelden
  • Browser öffnen ${LOGIN URL} ${BROWSER}
  • Der Titel sollte Anmeldeseite sein
  • Geben Sie den Benutzernamen ein
  • [Argumente] ${username}
  • Eingabetext username_field ${username}
  • Passwort eingeben
  • [Argumente] ${password}
  • Eingabetext passwort_feld ${password}
  • Anmeldeinformationen einreichen
  • Klicken Sie auf die Schaltfläche login_button
  • Die Willkommensseite sollte geöffnet sein
  • Der Titel sollte Willkommensseite sein

Diese Testsuite führt verschiedene Testfälle aus und überprüft die Anmeldefunktion mit verschiedenen Szenarien wie ungültigem Benutzernamen, ungültigem Passwort, erfolgreicher Anmeldung usw.

Schlussfolgern

Da sich die Geschäftswelt von einer funktionsbasierten Entwicklung hin zu einem benutzerzentrierten Ansatz bewegt, spielt die akzeptanzdatengesteuerte Entwicklung eine Schlüsselrolle in Softwareentwicklungs- und Testumgebungen. Robot Framework erfüllt diesen Zweck zu Recht. Mit schlüsselwortgesteuerten Testmethoden macht diese Open-Source-Lösung die Durchführung von Akzeptanztests einfach und kostengünstig. Die leicht lesbare Syntax und die benutzerfreundliche Oberfläche machen dieses Tool zu einer guten Wahl für Testunternehmen jeder Größe.

Wenn Sie andere Frameworks sehen möchten, die sich integrieren lassen Digital.ai Continuous Testing Schau genauer hin

Sind Sie bereit, Ihr Unternehmen zu skalieren?

Entdecken

Was gibt es Neues in der Welt von Digital.ai

22. April 2024

Die Verzerrung in der Maschine: Verzerrungen von Trainingsdaten und ihre Auswirkungen auf den generierten Code von KI-Code-Assistenten

Entdecken Sie Vorurteile in KI-Trainingsdaten, die sich auf die Codegenerierung auswirken, und erlernen Sie Strategien, um diese zu mildern, um eine gerechtere KI-Entwicklung und Softwareinnovation zu ermöglichen.

Mehr erfahren
22. Februar 2024

Wie der Futurismus Cloud-Tests prägt: Eine Prognose

Erschließen Sie die Zukunft des Cloud-Testens: strategische Ansätze, um Technologie effektiv zu nutzen, die Softwarequalität zu verbessern und den Geschäftserfolg sicherzustellen.

Mehr erfahren
4. Dezember 2023

Das Streben nach Qualität: Kontinuierliche automatisierte Softwaretests für die Automobilindustrie

Entdecken Sie, wie es geht, von der KI-gestützten Testerstellung bis hin zu selbstheilenden Systemen continuous testing und innovative Entwicklungen prägen die Zukunft vernetzter, safeund zuverlässige Fahrzeuge.

Mehr erfahren