Automation von Tests oder Aufgaben mit simpler, menschenlesbarer Sprache – wohl kaum ein Tool realisiert dies besser als das quelloffene Robot Framework. Wir geben Tipps für den Einstieg in zwei Akten.
Robot-Framework-Tests in Visual Studio Code.
(Bild: Lang / Robocorp)
Robot Framework ist vermutlich eines der spannendsten Projekte rund um das Thema Application Testing und darüber hinaus auch für die Automatisierung von Prozessen. Und das aus ganz simplen Gründen: Zunächst mal handelt es sich um ein Open-Source-Projekt mit großer und aktiver Community – kostenfrei, anpassbar und umgeben von einem recht ansehnlichen Ökosystem aus Erweiterungen, hilfreichen Tools und Best Practices.
Davon ab ist der wohl größte Pluspunkt der Low-Code-Ansatz: Tests werden nicht mit Code geschrieben, sondern mit ganz simplen Keywords, die weitgehend intuitiv zu verstehen sind. Ein Browser soll mit einer URL geöffnet werden? Hier genügt ein triviales „Open Browser example.com“! Doch man muss nicht auf Python & Co. verzichten – eigenen Code anzubinden, ist denkbar einfach.
Nichtsdestotrotz ist das Robot-Framework-Universum zu Beginn nicht ganz einfach nachzuvollziehen, was den vielen Begrifflichkeiten und Tools sowie der großen Flexibilität geschuldet ist. In dieser Mini-Serie verraten wir zunächst, was Robot Framework zu leisten vermag, wie das Ökosystem aufgebaut ist und warum das System so reizvoll ist. Im zweiten Teil folgt dann ein Schritt-für-Schritt-Einstieg in die Praxis – angefangen mit der etwas lästigen Inbetriebnahme unter Ubuntu bis zum erfreulich einfachen Einbinden eigener Python-Skripte.
Was ist Robot Framework?
Robot Framework, im Folgenden auch RF, ist für zwei Aufgabenbereiche gedacht, die allerdings sehr nah beieinander liegen – insbesondere was die Umsetzung angeht. Zum einen handelt es sich um ein Framework für Testautomatisierung. Abgedeckt werden dabei alle Testarten, vom Unit Testing über API- bis hin zu Akzepttanztests. Insbesondere bei Letzteren spielt Robot Framework seine Stärken aus.
Ganz konkret könnte man sich beispielsweise den Test eines Online-Shops vorstellen. Ein Testfall könnte hier so aussehen, dass RF auf dem Desktop einen Browser öffnet, die Shop-URL aufruft, sich am System anmeldet, Produkte in den Warenkorb legt und letztlich auscheckt. Ohne an dieser Stelle auf die technischen Details einzugehen, hier ein Beispiel für einen Test auf ein erfolgreiches Einloggen:
*** Test Cases *** Valid Login Open Browser To http://example.com/shop Input Username demo Input Password mode Submit Credentials Welcome Page Should Be Open [Teardown] Close Browser
Der oben gezeigte Testfall an einem Login-Fenster ausprobiert.
(Bild: Lang / Robocorp)
Was dieser Test macht, dürfte auch für jene nachvollziehbar sein, die noch nie von Robot Framework gehört haben. Und genau hier liegt einer der Reize des Systems: Man benötigt keine Programmierkenntnisse, um Tests aus bestehenden Keywords zu konstruieren. Doch hinter den Keywords laufen natürlich beispielsweise Python-Skripte und -Funktionen, so dass auch Code-Junkies auf ihre Kosten kommen können.
HTML-Report mit vier Testfällen.
(Bild: Lang / Robocorp)
Die Ergebnisse solcher Tests liefert Robot Framework in Form gut aufbereiteter, interaktiver Berichte und Log-Dateien auf HTML-Basis (im Bild vorne ein Beispiel). Solche Reports lassen sich durchsuchen, filtern und bis auf kleinste Testebene herunterbrechen, um zum Beispiel eingesetzte Variablen einsehen zu können.
Eine Grenze für Testobjekte gibt es nicht wirklich, letztlich sind die Keywords nur eine Abstraktionsebene, die über beliebigen Code gestülpt werden kann – wobei ein Großteil des Üblichen bereits über Bibliotheken abgedeckt ist.
Das Framework beherrscht aber auch Robotic Process Automation (RPA). Beim Testing geht es darum, Fehler zu finden – nach strikten Regeln, mit Testdaten. Bei der Prozessautomation sollen hingegen Prozesse immer erfolgreich ausgeführt werden – zudem werden auch produktive Daten verändert. Von den konzeptionellen Unterschieden abgesehen, funktioniert beides auf technischer Ebene nahezu exakt gleich in Robot Framework.
Auf begrifflicher Ebene ist einmal von Tasks und einmal von „Test Cases“ die Rede, aber die Verarbeitung ist identisch. Die Unterscheidung Tasks und Tests ist in Artikeln, Beispielen, Tools und der Dokumentation nicht immer ganz konsistent und kann daher etwas verwirrend sein. Für den Anfang lässt sich das ignorieren.
Das RF-Ökosystem – Robocorp, RPA
Wie bei jedem neuen Thema, wird der User in der Robot-Framework-Welt mit etlichen Fachbegriffen und Stakeholdern torpediert, die gerne mal nicht erklärt werden. Das eigentliche Projekt ist schlicht Robot Framework, das auf GitHub gepflegt wird.
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
Als nächstes taucht die Robot Framework Foundation auf. Die gemeinnützige Organisation mit Sitz in Finnland, die die Entwicklung des Frameworks forciert, Gelder beschafft, die RoboCon-Messe veranstaltet und so weiter. Zu den Mitgliedern gehören beispielsweise Capgemini, Cisco, DB Schenker, Kuka, Provinzial, Checkmk und Nokia.
Weiterhin gibt es noch Robocorp, ebenfalls ansässig in Finnland. Robocorp bietet eine Plattform für Automationen – zukünftig nur noch auf Python-Basis, wie erst Anfang des Jahres mitgeteilt wurde. Bislang hat Robocorp jedoch auf Robot Framework gesetzt und zwei Tools entwickelt, die einem über den Weg laufen: RCC und das RPA Framework.
Das RPA Framework ist eine Sammlung von Tools und vor allem Bibliotheken für RPA mit Robot Framework (oder Python) – quasi eine Art „Meta-Bibliothek“, die wiederum Zugriff auf beispielsweise Browser-Bibliotheken gibt, die auch für die oben bereits erwähnten Keywords wie „Open Browser“ verantwortlich sind. Und um die Verwirrung zu komplettieren: Obwohl das Label RPA vornan steht, kann sie natürlich auch fürs Testing verwendet werden.
Ein Beispiel: Für Web-Automatisierungen und -Tests wird meist wahlweise ein Selenium- oder ein Playwright-Browser eingesetzt. In Robot-Framework-Projekten kann letzterer sowohl über RPA Framework als auch über den sogenannten Robotframework-Browser genutzt werden.
Wunderwaffe RCC
Wirklich spannend wird es beim Robocorp-Tool RCC. In der Praxis laufen Tests meist in virtuellen Umgebungen ab, schließlich werden immer wieder unterschiedliche Abhängigkeiten, Python-Versionen, Umgebungsvariablen und so weiter benötigt. Also landen Tests in der Regel in eng-Umgebungen, die entsprechend aufgesetzt werden müssen.
RCC kann diese Aufgabe automatisieren. Hier lassen sich virtuelle, Python-basierte Umgebungen deklarativ per YAML-Datei erzeugen und vor allem verteilen. Heißt: Ein „Automationspaket“, also ein Test- oder RPA-Projekt, ist damit völlig portabel! Alles, was für die Ausführung benötigt wird, sind die RCC-Binary und ein Ordner mit den gesammelten Tests beziehungsweise Automationen. Bei der Ausführung werden dann virtuelle Umgebungen aufgesetzt, Abhängigkeiten installiert und letztlich die eigentlichen Tests/Automationen ausgeführt.
Den Nutzen von RCC darf man wirklich nicht unterschätzen. Wer sich weiter damit beschäftigt, sollte aber eines bedenken: Bei RCC geht es offiziell eigentlich ausschließlich um RPA-Angelegenheiten – es eignet sich aber genauso fürs Testing. Bestehende Tests lassen sich übrigens ziemlich einfach RCC-kompatibel machen. Es fehlen lediglich zwei YAML-Dateien für die Deklaration der Umgebung und der auszuführenden Aufgaben.
Bibliotheken und Tools
Wie der Name schon sagt, liefert Robot Framework im Grunde nur einen Rahmen, um Tests auf Basis von Keywords zusammenstellen zu können. Ein Keyword kann dabei zum Beispiel schlicht und ergreifend der Name einer Python-Funktion aus einem Skript sein, das in der Test-Deklaration referenziert wird.
Den eigentlichen Funktionsumfang liefern aber die vorhandenen Robotframework-Bibliotheken; hier ein kleiner Auszug:
Fast selbstverständlich wird Robot Framework auch in Visual Studio Code unterstützt. Dort lassen sich recht bequem Test-Sammlungen, einzelne Tests oder Keywords ausführen, env-Umgebungen werden erkannt, Debugging ist mit an Bord und so weiter.
Bevor es nun an die Praxis geht, noch etwas Schönes an Robot Framework: Es bringt unterschiedliche Teams und technische Fähigkeiten zusammen. Entwicklerinnen und Entwickler könnten zum Beispiel ihre Python-Tests in das Framework einbinden und das technische Produktmanagement wäre dazu in der Lage, daraus per Low-Code abstraktere Tests etwa für Tests aus Nutzersicht zusammenschrauben.