Testautomatisierung

Managing Testautomation mit A2A

Der Advanced Automation Approach (kurz: A2A) bietet einen schnelleren Return on Investment. Und noch so einiges mehr. In meinem aktuellen Artikel möchte ich speziell die Managementebene ansprechen und die Vorteile von A2A darlegen. Was ist für Sie essentiell zu wissen bei Testautomatisierungsprojekten? Wie wird das Erreichte sichtbar für das ganze Unternehmen? Unser Reporting nach A2A und die von uns definierten KPIs helfen beim Transparentmachen Ihrer Erfolge. Erfahren Sie mehr zu den drei Phasen der Testautomatisierung und wie Ihr Projekt gegen äußere Einflüsse gewappnet ist.

Managing Testautomation

Im Laufe der letzten Jahre hat sich nicht nur das Thema Testautomatisierung an sich, sondern die gesamte Softwareentwicklung radikal verändert und weiterentwickelt. Mittlerweile ist „Agile“ bekannt wie das 1×1 und mobile Applikationen fester Bestandteil der Systemlandschaft. Trotzdem findet man vielerorts „nur“ den klassischen UI-Testautomatisierungsansatz  mit hohem (Wartungs-) Aufwand und in weiterer Folge zweifelhaftem Return on Investment der Testautomatisierung.

 

Klassischer Ansatz vs. Testautomatisierung

Der klassische Ansatz zeigt deutlich, dass ohne Testautomatisierung der Aufwand in frühen Testphasen geringer ist und im weiteren Verlauf stark steigt. Im Gegensatz dazu ist der Aufwand mit Testautomatisierung zu Beginn größer, da hier initiale Investments wie Toollizenzen, Mitarbeiterschulungen, etc. getätigt werden. Im Laufe der Zeit wird dieser Aufwand jedoch schnell geringer und ergibt so einen zufriedenstellenden Return on Investment.

 

Abb. 1: Testautomatisierung ermöglicht einen früheren Return on Investment

Abb. 1: Testautomatisierung ermöglicht einen früheren Return on Investment. ©ANECON

 

Testautomatisierung kann noch mehr

Bei genauerer Betrachtung und Analyse bisheriger Projekterfahrungen war für uns rasch ersichtlich, dass es nicht nur alleine die Aufwandsersparnis ist, die das Investment Testautomatisierung rechtfertigt.

Unserer Meinung nach müssen viel mehr auch folgende Punkte betrachtet werden:

  • Welchen Nutzen stiftet meine Testautomatisierung?
  • Was passiert mit der Testautomatisierung, wenn sich das Produkt im Live-Betrieb befindet?
  • Wie verhält sich meine Testautomatisierungslösung, wenn spezielle Ereignisse eintreten?

Erst die genaue Betrachtung dieser Aspekte liefert eine qualifizierte Aussage über eine bestehende Testautomatisierungslösung bzw. macht sichtbar, welche Faktoren bereits vor dem Einsatz einer Testautomatisierung betrachtet werden sollten.

Mit dieser Erkenntnis und mit unserem Know-how aus vielen Kundenprojekten entwickelten wir in Folge den Automatisierungsansatz „Advanced Automation Approach“, kurz A2A. Dabei wird der gesamte Lifecycle der IT-Lösung betrachtet und das Angebot auf die individuellen Bedürfnisse maßgeschneidert. In diesem Prozess werden Meilensteine wie Beratung, Konzeption, Architektur, Implementierung, Durchführung, Wartung oder Training erreicht und die dazu gehörenden Aufgaben in der gewünschten Gewichtung durch unsere Experten professionell betreut.

Besonders die Ereignisse, die eine Automatisierungslösung im Laufe der Jahre treffen können, sind für uns ein massives Erfolgs-  und Planungskriterium. Die am häufigsten uftretenden Ereignisse sind:

  • Testdatenalterung
  • Technologiewechsel
  • Toolwechsel
  • Technische Änderungen
  • Fachliche Änderungen
  • Brain Drain
  • Wachstum der Organisation

Um all diese oben erwähnten Ereignisse optimal zu adressieren, teilen wir den Lebenszyklus einer Testautomatisierung in 3 Phasen: CREATE, DISCOVER und BENEFIT. In jeder dieser Phase konnten wir aus unseren Projekterfahrungen Einzigartigkeiten extrahieren, die eine nachhaltige und investitionssichere Testautomatisierungslösung garantieren.

 

Abb. 2: Eine Testautomatisierungslösung nach A2A durchläuft 3 Phasen

Abb. 2: Eine Testautomatisierungslösung nach A2A durchläuft 3 Phasen ©ANECON

 

1. Phase: DISCOVER

Hier werden normalerweise Aktionen wie ein PoC, Scoping oder die fachliche Einbindung der externen Berater durchgeführt. All das sehen wir als Basis in der Konzeptionsphase. Mit A2A gehen wir aber noch einige Schritte weiter: Kauft man Toollizenzen, kann es passieren dass man sich, vielleicht sogar unbewusst, die Vorgehensweise für die  Automatisierung übernimmt, die das Tool bzw. der Hersteller vorgibt. Oder man besitzt nun ein Tool und wird seitens des Herstellers in punkto Methodik und Vorgehen alleine im Regen stehen gelassen. Genau solche Situationen wollen wir vermeiden. Wir wollen die optimale Vorgehensweise – von der Testfallerstellung bist zur Automatisierung – bereits in der DISCOVER- Phase gemeinsam mit dem Kunden auf seine spezifischen Anforderungen (z.B. verfügbare Ressourcen, Systeme, …) abstimmen.

Ganz besonders wichtig ist es uns bereits in dieser Phase eine neutrale Wirtschaftlichkeitsbetrachtung durchzuführen. Ist hier Testautomatisierung wirklich der Schlüssel zum Erfolg? Oder ist es vielleicht in einer bestimmten Konstellation doch sinnvoller, manuell zu testen? Als toolunabhängiger Berater sind uns der effektivste Einsatz der vorhandenen Ressourcen und die Sicherstellung der Qualität wichtiger, als die Anschaffung eines Testautomatisierungswerkzeugs.

 

2. Phase: CREATE

In der CREATE-Phase wird allgemein Toolcustomizing betrieben. Denn, wie uns die Praxis zeigt, funktioniert out-of-the-box dann doch nicht immer alles wie vom Hersteller versprochen. Es werden Pilotprojekte durchgeführt und Teststrecken definiert.

Gemeinsam mit dem Kunden entwickeln wir ein Framework, welches als Schnittstelle zwischen den einzelnen eingesetzten Tools fungiert, und somit die Verwendung von verschiedenen Tools erleichtert. Wie genau die Implementierung eines solchen Frameworks aussieht, werden mein Kollege Stefan Gwihs und ich in einem unserer nächsten Blogbeiträge für JAVA und .NET Technologien darstellen.

Zusätzlich wollen wir in der CREATE-Phase ein einheitliches Wording erreichen. Wir nennen die Dinge beim Namen – und halten uns dabei an internationale Standards wie ISTQB und IEEE. Dadurch erreichen wir bereits früh im Projekt eine einheitliche Sprache und Sichtweise gegenüber den verwendeten Methoden und Standards.

Wer kennt sie nicht, die Guidelines wie Definition of Done, an die sich Entwickler halten müssen. Warum sollen wir nicht auch solche Guidelines für die Testautomatisierung aufstellen? Ich persönlich sehe die Entwicklung der Testautomatisierung, wie der Name schon sagt,  als parallele Entwicklungsleistung zur Entwicklung des Programmcodes. Deshalb halte ich es auch in diesem Bereich für essentiell, Guidelines zu entwickeln. Seien es Guidelines, die den Automatisierungscode betreffen wie Kommentare und Coding Richtlinien, oder Guidelines, die die Erstellung und Ableitung der Testfälle aus den fachlichen Requirements betreffen. Egal in welchem Bereich, Guidelines helfen uns die Qualität des gesamten Testprozesses und damit auch der Testautomatisierung zu steigern und zu stabilisieren.

Ein besonders wichtiger Punkt für uns ist auch die Mitarbeiter-Entwicklung beim Kunden. Obwohl wir als Dienstleister auftreten, sehen wir uns gerne als Teil des Teams, wohl wissend dass unser direkter Einsatz beim Kunden mit einem Ablaufdatum begrenzt ist. Deshalb ist es uns wichtig, das aufgebaute Know-how permanent an die Mitarbeiter des Kunden weiterzugeben, um damit die Voraussetzung zu schaffen, dass die entwickelte Lösung auch nach dem Einsatzende der ANECON Mitarbeiter bestmöglich betreut und weiterentwickelt werden kann.

Für mich ist die Integration der Testautomatisierungslösung in den Entwicklungsprozess ein fundamentaler Erfolgsfaktor in der „CREATE“ Phase. Was nützen die besten Pilot-Testfälle wenn diese nicht sofort in den täglichen Betrieb einfließen? Auch wenn die Anzahl der Testfälle vielleicht gering ist, so stiften diese definitiv mehr Nutzen, als würde man einen operativen Einsatz der Testfälle auf einen späteren Zeitpunkt verschieben. Vor allem bietet die frühe Integration in den Entwicklungszyklus die Möglichkeit, rasch und stressfrei im Projekt bereits Erfahrung mit automatisierten Deployments und Testläufen auf speziellen Umgebungen zu machen. Aus unserer Erfahrung ist es wichtig, hier bereits früh Zeit zu investieren, da das initiale Aufsetzen durchaus mit größeren Zeitaufwänden seitens der Systemadministratoren und der Testumgebungsbetreuer verbunden sein kann. Ist dieser Aufwand jedoch bereits früh im Projekt erfolgt, ist es ein Leichtes, neue Testfälle oder Testsuiten in einen stabilen automatisierten Deployment-Workflow zu integrieren. Damit erhält man mit ein paar Mausklicks bereits am nächsten Tag aussagekräftige Ergebnisse des neu erweiterten Testlaufs.

 

3. Phase BENEFIT

In der von uns definierten 3. Phase erfolgt allerorts operative Automatisierung und Durchführung und natürlich die damit verbundene Wartung.

Wir wollen in dieser Phase den Fokus auf Erfolgskontrolle und die Darstellung des Erfolgs legen. Dabei kann es durchaus vorkommen, dass das Projekt bereits erfolgreich abgeschlossen ist und sich das Produkt somit bereits in Produktion befindet und wir als ANECON nicht mehr aktiv beim Kunden vor Ort sind. Trotzdem bieten wir die Möglichkeit, nochmals, von außen, mit etwas Abstand zum Projekt, eine objektive Erfolgskontrolle und bei Bedarf Optimierung der Lösung durchzuführen.

Durch weiterführende ISTQB Trainings, oder unserem speziellen 360° Testautomatisierungstraining, bieten wir dem Kunden die Möglichkeit das bisher erworbene Know-how zu vertiefen. Dabei führen wir gerne auch Trainings direkt beim Kunden, sogenannte Inhouse-Trainings durch, die  abgestimmt auf spezielle Kundensituationen sind. Damit kann bereits im Training ein direkter Bezug zu den täglichen Automatisierungsaufgaben hergestellt werden.

Natürlich bieten wir unseren Kunden auch die Möglichkeit von direktem Coaching in allen Belangen der Testautomatisierung, um spezielle Anforderungen oder Hindernisse in der Testautomatisierung direkt zu lösen.

Doch wie wird der Erfolg oder das Erreichte mit der Testautomatisierung sichtbar für die ganze Abteilung, oder vielleicht sogar für das ganze Unternehmen?

Erfahrungsgemäß herrscht vielerorts die Meinung, dass es zwar Kollegen gibt die Testautomatisierung betreiben, man jedoch nicht genau weiß, was da eigentlich passiert oder warum dies und jenes so passiert.  Ein Fall von fehlendem oder falschem Reporting.

Deshalb wollen wir gemeinsam mit unserem Kunden Reports und vor allem KPIs (Key Performance Indicators) definieren, welche die Messbarkeit und vor allem die Darstellung was Testautomatisierung täglich leistet übernimmt.

Dabei gilt es ein paar kleine, aber wichtige Faktoren zu beachten:

  • Wer ist der Empfänger meines Reports? Top Level Management hat definitiv andere Anforderungen an Reports als der interne Test Manager oder die Entwicklungsabteilung.
  • Keep it simple! Es ist wissenschaftlich erwiesen, dass Diagramme ab der 3. Dimension nur mehr schwer verständlich sind. Beachten Sie, dass die beste Grafik den Sinn verfälschen kann, wenn sie optisch durch verschieben der Sicht oder spezielle Einfärbungen verändert wird.

 

Schneller, mehr und stabiler Nutzen

Werden nun die genannten Erfolgsfaktoren der 3 Phasen umgesetzt, können wir ein Handling der oben beschriebenen äußeren Einflüsse garantieren. Es werden natürlich Anpassungen oder Weiterentwicklungen von Nöten sein, diese werden jedoch nur kleine oder Teilbereiche der Testautomatisierungslösung betreffen, wodurch ein neuerlicher Volleinsatz relativ rasch gewährleistet ist. Wird jedoch auf veraltete Methoden, wie reines Capture & Replay oder Scripting in „Spaghetticode“ gesetzt, kann man mit an Sicherheit grenzender Wahrscheinlichkeit sagen, dass diese Lösungen beim Eintritt von diversen Ereignissen komplett wegbrechen, und somit für längeren Zeitraum kein Nutzen mehr generiert werden kann!

 

Abb. 3: Managing Testautomation mit A2A mit individuell angepassten Framework

Abb. 3: A2A und das dazugehörige Framework wird individuell auf Ihre Anforderungen angepasst. ©ANECON

 

Der Advanced Automation Approach garantiert Ihnen einen schnelleren Erfolg und Return on Investment, Ihre Testautomatisierungslösung stiftet höheren Nutzen, ist angepasst an Ihr Unternehmen und Ihre Anforderungen und bringt Ihnen eine langfristige Investitionssicherheit sowie eine höhere Nachhaltigkeit.

 

Abb. 4: Managing Testautomation mit A2A - Der Nutzen

Abb. 4: Die hervorgehobenen Blasen zeigen einen möglichen Eintritt von äußeren Einflussfaktoren und der jeweils unterschiedliche Verlauf mit A2A oder mit einer herkömmlichen Automatisierungslösung. ©ANECON

 

 

 

 

Passende Artikel

Kommentare gesperrt.