
Verständlicher und wartbarer Code ist nicht nur in der Softwareentwicklung wichtig, sondern auch in der Testautomatisierung. Reise mit uns durch das Robot Framework Clean-Code-Universum: Von einfachen Korrekturen bis hin zu umfangreichen Regelkatalogen ist alles dabei. Hierzu stellen wir Dir drei Tools vor, mit denen Du Deinen Code aufräumen kannst. Im Team, beziehungsweise im Unternehmen verankerte, Clean-Code-Regeln auch in der Automatisierung können zudem berücksichtigt werden.
Vorstellung der Tools
Robocop
Mit Robocop können diverse Schwachstellen im Code basierend auf definierten Regeln identifiziert werden. Robocop hat bereits über 100 implementierte Regeln. Zum Beispiel wird angezeigt, ob bei einem Keyword, einem Testfall, einer Test Suite oder einer Resource-Datei die Dokumentation fehlt. Außerdem werden Duplikate unterschiedlichster Elemente (Tags, Keywords, Variablen etc.) erkannt und gemeldet. Eine, aus unserer Sicht, sehr wichtige Regel, die Robocop mitbringt, ist die „not-allowed-char-in-name“-Regel. Hat ein Team sich beispielsweise darauf geeinigt, dass es keine Umlaute in Namen geben darf, unterstützt diese Regel das Erkennen und Einhalten dieser Namenskonvention.
Robotidy
Im Gegensatz zu Robocop kann Robotidy den Robot Framework Code direkt anpassen. Es unterstützt Automatisierer:innen unter anderem bei der automatischen Formatierung von Robot Framework Skripten. Außerdem können beispielsweise Tags alphabetisch sortiert, oder Vorlagen zur Dokumentation von Keywords hinzugefügt werden. Ein weiteres Feature dieses Tools ist das Übersetzen von Robot Framework Code in andere Sprachen.
Sherlock
Sherlock ist ein weiteres Tool, das zum cleanen Code bei der Robot Framework Automatisierung beiträgt. Die Idee hinter diesem Tool ist es, den geschriebenen Code vollständig zu analysieren. Zwischen Sherlock und den anderen beiden Tools gibt es einen wichtigsten Unterschied. Das Ziel von Robotidy und Robocon ist es, Fehler im Code zu finden und entsprechend den erstellten Regeln anzupassen. Der Fokus von Sherlock liegt in der Analyse von bereits geschriebenem Code. Nach der Untersuchung erstellt Sherlock einen Bericht mit den Ergebnissen, welcher über ungenutzten Code, Codekomplexität oder Performanceprobleme Aufschluss gibt. An dieser Stelle sei erwähnt, dass sich dieses Tool noch in der Entwicklung befindet. Aktuell (21. Oktober 2024) gibt es nur eine Alpha-Version des Tools, die bereits einen guten Einblick über das Potential und die Vorteile von Sherlock gibt.
Installation
Installation und Konfiguration der Hilfsmittel sind sehr ähnlich. Da die Tools in Python entwickelt wurden, können sie über einen Konsolenbefehl eingebunden werden:
Nach der Ausführung des Konsolenbefehls werden Robocop, Robotidy und Sherlock lokal installiert. An dieser Stelle ist wichtig zu sagen, dass wir davon ausgehen, dass vor der Installation Robot Framework lokal installiert wurde und problemlos funktioniert.
Je nach verwendeter IDE (PyCharm, VSCode usw.) sind Robocop und Robotidy möglicherweise bereits automatisch als Erweiterungen verfügbar. Das bedeutet aber nicht, dass sie automatisch installiert werden. Es kann sein, dass die Erweiterungen sie nur als Standardwerkzeuge enthalten. In jedem Fall müssen sie mit dem Konsolenbefehl pip installiert werden. Um zu überprüfen, ob die Werkzeuge aktiv sind, können Sie in der Liste der installierten Erweiterungen nachsehen.
der Einsatz dieser praktischen Tools?
Wie funktioniert nun die Anwendung dieser nützlichen Tools zur Optimierung des Robot Frameworks? Erfahre in unserem zweiten Teil bereits nächste Woche mehr über Konsolenbefehle, Erweiterungen sowie individuelle Konfigurationen.
Die Autorinnen
Alena Drebezgova arbeitet seit 2024 als Beraterin bei der viadee IT-Unternehmensberatung. Zuvor war sie bereits als Werkstudentin bei der viadee aktiv tätig. Ihr Fokus liegt in den Bereichen Testmanagement, Testautomatisierung und Qualitätssicherung.
Lisa Sophie Colbatzky unterstützt Individuen sowie Teams dabei ihre Potentiale zu entfalten. Der Einsatz von kreativen Methoden und das Fördern von wertschätzendem Miteinander dürfen bei ihr nicht fehlen.
zurück zur Blogübersicht