Several clocks with different times shown on each on a white background

Blog

Zeit Sparen Mit Unit Testing In RPA

Mar 30, 2023 | 4 min lesen

ZEIT IST PRÄZISE, Sava Tomov, Senior Automation Engineer bei Roboyo, erklärt, wie Sie mit Unit-Tests Zeit sparen können, indem Sie die kniffligeren Teile der RPA-Entwicklung meistern

Als Entwickler wissen Sie, dass RPA (Robotic Process Automation) nicht  wie die Mehrheit der Software ist.  Da ihr einziger Zweck darin besteht, lästige, sich wiederholende Aufgaben ohne persönlichen Mehrwert zu übernehmen, kann sie diese eine Ressource freisetzen, die wirklich unbezahlbar ist: Zeit. Das ist natürlich nicht messbar: Wir können versuchen, sie mit KPIs zu belegen oder sie mit einem Preisschild zu versehen, aber Zeit ist das, was jeder am meisten schätzt.

Aber genauso wie RPA in anderen Bereichen unseres Berufslebens Kapazitäten freisetzt, ist es wichtig, dass wir als Entwickler Zeit sparen, wenn wir die Automatisierung aufbauen.

Wenn Sie schon einmal an der Entwicklung von RPA-Bots beteiligt waren, wissen Sie natürlich, dass der Weg nicht immer geradlinig ist. Irgendwann bleibt jeder bei der Entwicklung eines Bots an einem kniffligen Problem hängen.   

In solchen Situationen ist es hilfreich, wenn jemand anderes einen Blick darauf wirft. Wenn er auch keine direkte Lösung anbieten kann, so kann er  doch zumindest einen Hinweis geben, was wir vielleicht übersehen haben. In einer solchen Situation brauchen wir das Gefühl, dass wir weder allein noch unwissend sind.    

Wenn Sie mit RPA vertraut sind, wissen Sie, dass die Beschreibung des Problems in der Regel damit beginnt, dass Sie Ihrem Helfer den (un)berühmten Main zeigen.   

Der Main ist genau so, wie er sich anhört – er ist das Herzstück eines jeden Prozesses, er ist das Alpha und Omega, die eine Sache, die am Ende laufen muss. Wenn der Main ausfällt, verlieren wir Zeit. Wenn er erfolgreich läuft, sparen wir Zeit. Dies gilt sowohl für die Entwicklung als auch für den produktiven Betrieb. Um das zugrundeliegende Problem besser zu verstehen und zu demonstrieren, entscheiden wir uns in der Regel dafür, den Main zu debuggen – mit anderen Worten, den RPA-Code in Echtzeit zu testen und Schritt für Schritt zu sehen, was im Detail schief läuft.    

Aber genauso wie das Debugging viele Details zeigt, wenn es ein Problem gibt, zeigt es auch viele Details, wenn es überhaupt kein Problem gibt. Und das bedeutet, dass es einige Zeit dauert, bis wir den Problembereich erreichen, weil wir durch jeden einzelnen Teil der Automatisierung navigieren müssen, der einwandfrei läuft.    

Oft bedeutet dies, dass die Fehlersuche viele Schritte umfasst, die wir geduldig (und schmerzhaft) abwarten müssen. Und noch häufiger verbirgt sich das Problem hinter bestimmten Bedingungen, die schwer zu reproduzieren sind und manuelle Anpassungen oder sogar Eingriffe während der Fehlersuche erfordern.   

Haltepunkte im RPA-Code   

Um das Problem zu lösen, können wir als Entwickler Haltepunkte in den Code einbauen – “Stopps”, die wir einbauen, um einen detaillierten Blick unter die Haube zu werfen. An diesen Haltepunkten können wir analysieren, was vor sich geht, und RPA-Debugging durchführen.    

Dennoch haben die meisten Menschen, die aktiv an der Entwicklung von RPA-Lösungen beteiligt sind, ähnliche Sätze wie den folgenden geäußert:    

“Lieber Kollege, der bereit ist, etwas Zeit zu investieren und mir zu helfen, ich habe ein Problem mit meinem RPA-Code.”    

“Ich zeige es dir, ich werde nur den Main debuggen.”    

“Keine Sorge, es dauert nur ein paar Sekunden, um zu dem Haltepunkt zu kommen, den ich gerade gesetzt habe, um es dir zu zeigen.”    

“Hmm … es scheint, ich habe vergessen, Transaktions-Elemente hinzuzufügen, die der Bot verarbeiten soll. Lassen Sie mich ein paar Transaktionsposten hinzufügen …”   

“Ah, ja, ich habe noch etwa 25 andere Haltepunkte, lassen Sie mich diese schnell entfernen.”  

“Wie dumm von mir, ich brauche tatsächlich noch ein paar andere Haltepunkte …”

“Oh Mann, ich muss mich durch ALLE diese Aktivitäten und Warnungen im Code klicken!”    

“Tut mir leid, genau dieser Transaktionspunkt erreicht nicht den problematischen Teil der Logik. Wir müssen warten …”    

“Ich schätze, es dauert … eher 15 Minuten, bis ich das genaue Problem zeigen kann.”  

Das Gespräch kann sogar mit folgendem Satz enden:    

“Hey, komm zurück! Du hast gesagt, du würdest helfen!”    

Unit Testing: Eine Möglichkeit, Teile des Codes zu extrahieren    

Das Unit Testing in UiPath ist ein Prozess, der es uns ermöglicht, Teile des Codes zu extrahieren und sie unabhängig von allem anderen auszuführen.   

Unit-Tests ermöglichen es uns, jemandem ein bestimmtes Problem zu zeigen, ohne dass wir auf den gesamten vorangehenden Code warten müssen. Das ist so, als ob man einen Teil des Automotors ausbauen könnte, um zu zeigen, dass er kaputt ist, ohne dass man das Auto mit 133 km/h über die Autobahn fahren muss.   

Dazu müssen wir den Motor natürlich so konstruieren, dass jedes Teil herausgenommen, unabhängig vom Rest (als einzelne Einheit) analysiert und dann wieder eingebaut werden kann.  

Wenn es in der RPA-Entwicklung Unit-Tests gäbe, würde Ihr Teil des Gesprächs eher so aussehen:    

“Lieber Kollege, der bereit ist, etwas Zeit zu investieren und mir zu helfen, ich habe ein Problem mit meinem RPA-Code.”   
“Lass es mich dir zeigen. Anstatt den Main zu debuggen, habe ich einen Unit-Test für diese Funktionalität.”   
“So, es hat nur ein paar Sekunden gedauert, bis der Code das Problem erreicht hat.”  
“Ah, danke! Sie haben Recht, das habe ich tatsächlich übersehen, jetzt scheint es zu funktionieren.”  

Wenn Sie an der RPA-Entwicklung beteiligt sind, ist die Botschaft laut und deutlich: Implementieren Sie Unit-Tests! Das wird die Bereitschaft der Mitarbeiter erhöhen, mit Ihnen zusammen zu arbeiten. Es wird Sie dazu bringen, mehr an Ihre eigenen Lösungen zu glauben. Sie werden dadurch Probleme viel effizienter erkennen.   

Und indem es das Testen erleichtert, kann es Ihnen helfen, RPA-Projekte zum Erfolg zu führen – denn Automatisierung ist nichts wert, wenn man sie nicht testet.  

Sparen Sie Ihre eigene Zeit und die der anderen   

Vielleicht denken Sie, dass die oben genannten Dialoge übertrieben sind. Wenn dem so ist, denken Sie daran: Jeder Dialog ist in den meisten Fällen ein Monolog – und zwar einer, den wir während der Entwicklung hunderte von Malen führen.    

Mit anderen Worten: Als Entwickler sind wir diejenigen, die sich selbst helfen, Lösungen für Probleme in unserem eigenen Code zu finden – vorausgesetzt, der Code ist angemessen strukturiert und wir “umgeben” die entwickelten Codeblöcke mit Unit-Tests, die es uns ermöglichen, unsere Aufmerksamkeit auf eine einzelne Funktionalität zu richten.    

Durch die Implementierung von Unit-Tests während der Entwicklung sparen wir also unsere eigene kostbare Zeit. Es werden sogar ein paar Minuten frei, die wir mit angenehmeren Aufgaben verbringen können, z. B. mit dem Schreiben von Blogbeiträgen.    

Natürlich ist das, wie alles andere auch, leichter gesagt als getan – und die Prinzipien und Anforderungen von Unit-Tests in RPA sind das Thema einer anderen, eher technischen Geschichte.  

Wie kann Roboyo helfen?    

Bei Roboyo können wir Ihnen helfen, Unit-Tests in Ihre RPA-Entwicklung zu implementieren, um Ihren Code zu verbessern. Aber natürlich sind Unit-Tests nur eine Option – schauen Sie sich unsere Seite zur Testautomatisierung an, um weitere Informationen zu erhalten, und vereinbaren Sie einen Termin mit einem unserer Experten, um die vielen Möglichkeiten zu besprechen, wie wir Ihre Teststrategie beschleunigen können.   

ERHALTEN SIE EINBLICKE DER NÄCHSTEN STUFE 

Verpassen Sie nie wieder einen Einblick. Registrieren Sie sich jetzt.

  • This field is for validation purposes and should be left unchanged.

Ähnliche Inhalte

Bewährte Praktiken für ein RPA-Kompetenzzentrum (CoE, Center of Excellence)  Bewährte Praktiken für ein RPA-Kompetenzzentrum (CoE, Center of Excellence) 

Bewährte Praktiken für ein RPA-Kompetenzzentrum (CoE, Center of Excellence) 

Ein robustes Kompetenzzentrum mit einem Fundament aus Prozessen und Tools, die von starken Erfolgssäulen…
Die 5 wichtigsten Vorteile von Robotic Process Automation (RPA) Die 5 wichtigsten Vorteile von Robotic Process Automation (RPA)

Die 5 wichtigsten Vorteile von Robotic Process Automation (RPA)

Entdecken Sie die 5 entscheidenden Vorteile der Robotic Process Automation (RPA) und entfesseln Sie die…
3 Gründe, Warum Ihr Unternehmen Von Uipath Apps Profitieren Könnte

3 Gründe, Warum Ihr Unternehmen Von Uipath Apps Profitieren Könnte

In diesem Blog teilt Andreas Bretting von Roboyo seine Ratschläge für die Entscheidung, ob UiPath Apps …
6 Möglichkeiten für den Einstieg in die Nutzung von Chatbots und Voicebots

6 Möglichkeiten für den Einstieg in die Nutzung von Chatbots und Voicebots

Du interessierst dich für Konversations-KI, musst aber noch die Anwendungsfälle und die geschäftlichen…

ERREICHEN SIE DIE NÄCHSTE STUFE. JETZT.

Kontakt aufnehmen

  • This field is for validation purposes and should be left unchanged.

JOLT

IS NOW A PART OF ROBOYO

Jolt Roboyo Logos

In a continued effort to ensure we offer our customers the very best in knowledge and skills, Roboyo has acquired Jolt Advantage Group.

OKAY

AKOA

IS NOW PART OF ROBOYO

akoa-logo

In a continued effort to ensure we offer our customers the very best in knowledge and skills, Roboyo has acquired AKOA.

OKAY