•  
  •  
  •  
  •  
  •  
Testing und DevOps

TestOps – die Chance für Tester von heute

Mit DevOps erhalten Tester neue Möglichkeiten, sich an der Wertschöpfungskette in ihrem IT-Betrieb direkt zu beteiligen. Gleichzeitig erweitern sie ihre Skills und nehmen eine neue Rolle als TestOps-Ingenieur ein.

08.07.2020Text: bbv0 Kommentare
TestOps
  •  
  •  
  •  
  •  

So wie DevOps die Prozesse in der Softwareentwicklung optimieren kann, verspricht TestOps ähnliche Vorzüge in den Bereichen Test und Testautomation. Mit TestOps soll es gelingen, durchgängige, agile Design- und Test-Workflows bereitzustellen. TestOps ist eine vollkommen neue Art zu arbeiten. Doch was genau ist TestOps? Slobodan Bozic, Senior Testmanager bei bbv, erklärt: «TestOps ist aus der DevOps-Bewegung entstanden. Neu ist die Erweiterung des Ansatzes mit dem Testing, genauer gesagt durch Shift-Left & Shift-Right. Dazu kommen die Praktiken von Continuous Testing sowie neue Möglichkeiten, die sich aus Artificial Intelligence und Machine Learning ergeben.»

Durch den neuen Ansatz entstehen neue Tester Use Cases, neue Fähigkeiten, neue Tools und erweiterte Zusammenarbeitsmodelle. «TestOps-Ingenieure sind nach unserem Verständnis Tester, die sich um den Betrieb eines Teils des Systems kümmern können. Durch die Erweiterung des Wirkungsfeldes erhalten Tester die Chance, interessante Skills zu erwerben.

Shift-Left und Shift-Right

TestOps bezieht sich auf beide Seiten des Testings, also auf Shift-Left und auf Shift-Right, aber auch auf Continuous Testing.

Shift-Left Testing: Testen so früh und so oft wie möglich

Beim Shift-Left Testing werden möglichst früh automatisierte Tests von Code, Umgebungen und Konfigurationen durchgeführt. Es kommen die dafür typischen Arbeitsweisen wie Behavioral Driven Development (BDD), Test Driven Development (TDD) und die statischen Prüfungen von Architektur- und Design-Qualität zum Zug. Security-Tests werden von Beginn an durchgeführt, inklusive der Einbindung von sicherheitsgeprüften Bibliotheken.

Shift-Right Testing: Testen in der Produktion

Beim Shift-Right Testing sollen Hypothesen des Business überprüft und das richtige Verhalten in der Produktion sichergestellt werden. Mit TestOps kommen nun auch neue Testpraktiken hinzu wie etwa:

  • Release Validation (Continuous Testing)
  • Resilienz-Testing (Chaos Monkey, Symian Army)
  • Hypothesis Testing (A/B-Testing mit Release Patterns, bspw. Canary-Releases)
  • CX-basiertes Testing (End-User-Verhalten)
  • Monitoring der Produktion (Telemetrie mit neuen Metriken; Erkennen und Voraussagen von Problemen)
  • Einblicke in Produktionsdaten (Artificial Intelligence und Machine Learning)

Shift-Right hat vorwiegend zur Entstehung des TestOps beigetragen und zur erweiterten Zusammenarbeit von angrenzenden Disziplinen geführt.

Testing mit künstlicher Intelligenz

Der Einfluss von künstlicher Intelligenz (KI) auf Qualitätssicherung und Testing hat in den letzten Jahren stark zugenommen. Gemäss einer Gartner-Studie von 2019 wird künstliche Intelligenz weiterhin an Bedeutung gewinnen und in den nächsten Jahren einer der grössten Trends in Bezug auf Qualitätssicherung werden. KI wird auch das Testmanagement, die Testausführung und das Testfalldesign fördern.

KI wirkt sich in der Praxis auf die Qualitätssicherung und das Testen aus, indem sie als «selbstheilende», selbsterstellende oder selbstausführende Technologie eingesetzt werden kann. Prozesse passen sich im Testverfahren selbstständig den Szenarien und den Veränderungen an. Darunter ist etwa die automatische Korrektur der Testfälle (auch in Bezug auf die Laufzeit) zu verstehen. Diese können beispielsweise verändert werden, wenn Änderungen am GUI vorgenommen werden. Damit erfordert der Einsatz von KI auch einen neuen, spezifischen Ansatz der Qualitätssicherung, insbesondere für die Validierung und die Verifizierung.

Die Verwendung von KI beim Testen ist noch in der Anfangsphase. Unternehmen wenden Smart Analytics an, um Entscheidungen treffen zu können, die zur Optimierung der Testaktivitäten beitragen und um Qualitätsprognosen machen zu können. Zukünftige Testarten mit künstlicher Intelligenz sind etwa:

  • Bestätigung der Feststellung eines Fehlers (Failure Determination)
  • Persona Testing (Optimierung der Applikation nach Zielpublikum)

Continuous Testing als charakteristische Praktik für DevOps

Eine weitere wichtige Anwendungsmöglichkeit von TestOps ist das Continuous Testing. Während bei Continuous Automation die Abdeckung von Medium-Level-Risiken im Vordergrund steht, um zu prüfen, ob Storys richtig umgesetzt werden, liegt der Fokus beim Continuous Testing auf den Business-Risiken. Es wird eine End-to-End-Sicht eingenommen, womit auch High-Level-Risiken abgedeckt werden. Dadurch können Aussagen dazu gemacht werden, ob ein Release-Kandidat geschäftsrelevante Risiken beinhaltet. Damit wird der Business-Value getestet.

Die vier Pfeiler des Testings und der Weg vom Tester zum TestOps:

 

TestOps

Die vier Pfeiler des Testings. Quelle: bbv

 

Die Grafik zeigt eine Landschaft, auf der sich der Tester von heute orientieren kann, um den Weg zum TestOps gehen zu können. Die Pfeile in die rechte Richtung deuten auf eine Evolution des Testings hin. Obwohl die verschiedenen Vorgehensweisen auf dem Markt noch bestehen, zeigt die Grafik den Trend in Richtung DevOps Testing und der dazugehörenden Rolle des «TestOps».

Empfehlung für TestOps

Die Zeit für den neuen TestOps-Ingenieur ist gekommen. Er sollte sich neue Fähigkeiten zulegen, um die Chancen, die mit DevOps kommen, meistern zu können. Kontinuierlich entstehen neue Testansätze, die wiederum neue Fähigkeiten erfordern und die Toolchain ändern. Mit Shift-Right & Shift-Left Testing sind die Grundlagen dazu gegeben. Doch es entstehen Verfeinerungen von diesen Praktiken, welche neue Testarten mit sich bringen. Dies erfordert, dass sich der Tester von heute aktuell halten muss und auch durch Blog-Beiträge zu neuen Erkenntnissen und Know-how gelangen kann. Die Literatur kann der schnellen Entwicklung und Geschwindigkeit, die DevOps mit sich bringt, oft nur zeitversetzt nachkommen.

 

Dieser Beitrag ist zuerst im Blog Informatik Weiterbildung der Hochschule Luzern erschienen.

Der Experte

Slobodan Bozic

Slobodan Bozic ist seit Februar 2019 Senior Testmanager bei bbv. Einen besonderen Fokus legt er auf das Thema TestOps. Wenn Slobodan / Bob sich nicht gerade mit dem Testing beschäftigt, verbringt er Zeit mit seiner Familie.

Unser Wissen im Abo

Slicing

Wie man User Stories richtig portioniert

Agile Software Development
DevOps-Praxis

Wie die Pipelines clean bleiben

Agile Software Development
Flexibilität von Softwarearchitekturen

Softwarearchitektur in der agilen Welt

Agile Software Development

Artikel kommentieren

Die E-Mail-Adresse wird nicht publiziert. Notwendige Felder sind mit einem * versehen.

Attention!

Sorry, so far we got only content in German for this section.

Attention!

Sorry, so far we got only content in German for this section.