Next Generation SharePoint
22.02.18 - 22.02.18
In München

BIG DATA Marketing Day
22.02.18 - 22.02.18
In München

SAMS 2018
26.02.18 - 27.02.18
In Berlin, Maritim proArte

EuroCIS 2018
27.02.18 - 01.03.18
In Düsseldorf, Messe Halle 9 und 10

BIG DATA Marketing Day
27.02.18 - 27.02.18
In Wien

SERIE
Automated Software Testing

Seit 2014 gibt es den offiziellen Testautomatisierungs-Ansatz A2A, der zwischenzeitlich in über 30 Kundenprojekten im Einsatz ist. Entwicklet wurde die Methodik bei Anecon, mittlerweile Teil der Nagarro Group, als Ergebnis aus 15 Jahren Praxiserfahrung in der Testautomation.

Herausforderungen in IT-Projekten fordern, dass man sich selbst und seine Werkzeuge ständig weiterentwickelt. Sind Sie neugierig, was so alles an neuen Themen rund um Testautomation auf dem Radarschirm ist? Dann lesen Sie hier weiter!

A2A.TA heute

Zunächst ein kurzer Rückblick, was sich seit dem Launch von A2A im Oktober 2014 getan hat:

  • Es wurden Lösungen für nachhaltige, lesbare und effiziente Regressionstests geschaffen.
  • Das Portfolio an Werkzeugintegrationen ist stetig gewachsen und integriert mittlerweile viele Technologien und Schnittstellen.
  • Die Reporting-Engine liefert nachvollziehbare und übersichtliche Ergebnisreports, direkt in den Testmanagement-Systemen der Kunden.
  • Testdatenmanagement, Testumgebungsmanagement und Service Virtualisierung sind feste Bestandteile des Vorgehens geworden.
  • Testartefakte sind in vielen Projekten fixer Bestandteil nicht nur des Vorgehens, sondern auch des Lieferobjekts.
  • Zu Technologien für Continuos Integration, Continuous Delivery und Continuous Deployment wurden auch Continuous Testing und Lösungen für DevOps Organisationen beigesteuert.

All diese Bausteine und noch mehr sind nicht nur Teildes Ansatzes, sondern kommen in jedem Testautomatisierungsprojekt direkt quasi im Werkzeugkoffer mit. Damit ist eine solide Basis für gewinnbringende Testautomatisierung gelegt.

Was bringt die Zukunft?

Im Folgenden geben wir einen kleinen Überblick über einen Auszug der Themen, die uns alle beschäftigen, und mit denen wir uns derzeit und in den nächsten Jahren intensiv auseinandersetzen werden. Einige dieser Themen werden intern entwickelt – andere in konkreten Kundenprojekten aufgesetzt. Diese Lösungen werden in den nächsten Monaten Teil eines offiziellen A2A-Packages werden und damit für alle Anwender verfügbar sein.

Mehrdimensionale Analysierbarkeit von Testergebnissen

Testautomatisierung liefert dann Mehrwert, wenn sie häufig durchgeführt wird. Doch gerade dann muss sie robust sein, um zuverlässige Ergebnisse zu liefern. Doch auch wieder nicht zu robust, damit alle relevanten Auffälligkeiten auch gefunden werden können.

In jedem Fall fordern fehlgeschlagene Testfälle eine Analyse der Fehlerursache. Und darin liegt, neben Wartungsaktivitäten, der Löwenanteil der Aufwände für Testautomatisierung im laufenden Betrieb. Es ist ein Kostenmultiplikator, da es üblicherweise hunderte oder tausende von Testfällen gibt, die alle das Risiko haben, fehlzuschlagen. Daher lohnt es sich, in die Analysierbarkeit der Testläufe zu investieren.

Gute Testautomatisierung liefert bereits jetzt detaillierte Informationen über die Testdurchführung: ein Log mit den fachlichen und technischen Testschritten, Screenshots und Videomitschnitte der Testdurchführung sind mittlerweile Standard in den meisten Tools.

Doch wir wollen weitergehen, um ein vollständigeres Bild des Testlaufs zu bekommen, zum Beispiel:

  • Wie ging es während der Durchführung der Client-Maschine? Der Prozessorauslastung? Dem Speicher?
  • Wie ging es den Servern? Waren sie verfügbar? Was stand zum Zeitpunkt des Laufs in den Logfiles? Exceptions? Auslastung? Reaktionszeiten?
  • Wie sah während der Durchführung das Netzwerk aus? Gab es Aussetzer? Reduzierten Throughput?
  • Gab es Wartungsfenster, die unseren Lauf beeinflusst haben?
  • Wie sahen im Vergleich die letzten X Testläufe aus? Gibt es „Dauerbrenner“ oder „Wackelkandidaten“? Hat sich die Geschwindigkeit verändert?
  • Welche Changes gab es in der aktuellen Version der Applikation gegenüber dem letzten Lauf?
  • Welche bekannten Issues gibt es, die unseren Lauf beeinträchtigen könnten?

Wir widmen uns also dem Aggregieren und Übereinanderlegen von vielen Informationen aus unterschiedlichen Quellen, um nicht nur die Perspektive der Testautomatisierung selbst, sondern ein umfassendes Bild der Testdurchführung zu erhalten, und dadurch schneller und zielgenauer Fehlerquellen und Beeinträchtigungen identifizieren zu können. Dadurch sparen wir nicht nur Analyseaufwand bei jedem einzelnen fehlgeschlagenen Testfall, sondern können auch grundlegende Probleme deutlich besser und schneller erkennen und beseitigen – sowohl in der Automatisierung als auch im getesteten Produkt.

Property Based Testing

In der Regel bestehen automatisierte Tests aus einem Ablauf, den erwarteten Ergebnissen und Testdaten. Es ist also eine Sequenz von Aktionen und Verifikationen, die automatisch durchgeführt wird, um das Verhalten der Applikation gegen die Erwartungen des Test-Designers zu überprüfen. Doch es gibt auch andere Formen, um das Verhalten von Applikationen zu beschreiben – und einige davon können automatisch geprüft werden. Als Beispiel wollen wir kurz „Property Based Testing“ vorstellen.

Diese Testmethode besteht nicht, wie klassische Testfälle, aus Ablauf, Erwartungen und Daten, sondern nutzt Aussagen über das Testobjekt, um dieses automatisch zu prüfen.
Ein Beispiel: Die Filterung von Datensätzen in einer Kundentabelle.

Nehmen wir die folgende Tabelle an:

| Registrierungsdatum | Name |
| 01.01.2017 | Martina Musterfrau |
| 03.05.2015 | Max Mustermann |
| 23.07.1981 | Peter Tester |

Wir definieren nun eine Funktion, die eine solche Liste filtern soll, und zwar nach dem Registrierungsdatum. Es gibt die Parameter Datum, und als Filter-Modus „größer“, „kleiner“ und „gleich“.

Ohne auf die spezifische Funktionalität einzugehen, können wir bereits Erwartungen an diese Funktion (und damit an deren Ergebnis) beschreiben.

Einige dieser Erwartungen:

  • Im Ergebnis sind gleich viele, oder weniger, Datensätze, als in der Ursprünglichen Tabelle.
  • Im Ergebnis gibt es keine Datensätze, die nicht in der ursprünglichen Tabelle enthalten waren.
  • Das Ergebnis enthält keine Duplikate.
  • Die Datensätze sind im Ergebnis so sortiert wie in der ursprünglichen Tabelle.

Daher bauen wir für Aussagen dieser Art einen automatisierten Baukasten an Überprüfungen auf, die wir dann auf Elemente des zu testenden Systems anwenden können (also etwa Masken, Webservices, Jobs, Datenbanken, etc.). Damit können wir auch ohne „exaktes“ Test-Design und Soll-Ergebnis eine Aussage darüber treffen, ob das Verhalten den spezifizierten Kriterien entspricht.

Hochgradig skalierbare und Enterprise-orientierte Testautomatisierung

Testautomatisierung in großen und heterogenen Landschaften ist an sich bereits eine Herausforderung. Asynchrone Aktionen in der zu testenden Systemlandschaft machen schnelle und zuverlässige Testdurchläufe schwierig. Eine hohe Anzahl von Testfällen kann zu schwerfälligen und langläufigen Testdurchführungen führen.

Servicevirtualisierung, Testumgebungsmanagement und Continuous Delivery helfen uns bereits dabei, gezielte und umfassende Tests durchführen zu können.

Doch was gibt es darüber hinaus zu tun? In diesem Themenkontext befassen wir uns unter anderem mit:

  • Parallelisierung von Testdurchführungen zur Reduktion der Gesamtlaufzeit
  • automatisches Testen von asynchronen und langläufigen Aktionen (z.B. Queues, Jobs, etc.)
  • Wiederverwertung von Testautomatisierungsartefakten in anderen Projekten und im Systemintegrationstest
  • Über Organisationen und Organisationseinheiten verteilte Testdurchführung, in unterschiedlichen Netzwerken und Unternehmen
  • Rasches Setup von neuen Testautomatisierungsprojekten – technisch und organisatorisch

All diese Aspekte sind wichtig für Unternehmen mit komplexen und heterogenen Systemlandschaften – aber auch für Unternehmen, die auf Microservice-Architekturen setzen. Und damit ist dieses Thema hoch-relevant für viele unserer Kunden, und daher für uns ein starker Fokus.

In Teil 2 des Artikels werden wir uns mit den folgenden spannenden Themen beschäftigen: Fuzzy Testing, Machine Learning und automatisiertes Accessibility Testing.

Thomas Steirer, Anecon Software Design und Beratung GmbH

Thomas SteirerNach Abschluss seines Studiums Informatik/Computational Intelligence an der TU Wien legte Thomas Steirer seine Schwerpunkte vor allem auf Testautomatisierung, Test-Tool-Evaluierung, Testframework-Entwicklung und Testmanagement. Der Test-Experte arbeitet in Wien bei Anecon, die Teil der Nagarro Group ist.

 

 

Mobile World
Jan 24, 2018

Business-Apps entwickeln - aber richtig

Immer mehr Unternehmen entdecken die Vorteile von Apps im Geschäftskundenumfeld für sich.…
Elefant
Nov 13, 2017

Systematischer Testaufbau und Testdurchführung

Um die in Teil 1 angesprochene, während der Pressekonferenz eingetretene, Verlangsamung…
Software
Jun 14, 2017

Softwareentwicklung: Automatisierung steigert Qualität

Digitalisierung heißt zuallererst: Anders denken lernen. Die digitale Transformation…
GRID LIST
Tb W190 H80 Crop Int 9cc0f78c8e26d024ae4e442e61f01e6b

Neues Release 10.6 der DeskCenter Management Suite

Das neue Release 10.6 der DeskCenter Management Suite standardisiert und beschleunigt…
Tb W190 H80 Crop Int 34728d417354d8517e727334ae0c6671

Bereit für Container?

Passiert es Ihnen auch ab und wann? Sie kommen in den firmeneigenen Besprechungsraum oder…
Tb W190 H80 Crop Int 9b4731a254f5866959e73e601ec536d6

Jedox 7.1-Release mit neuem Marketplace

Die Jedox AG hat die weltweite Verfügbarkeit der neuesten „Jedox 7.1“-Version…
Tb W190 H80 Crop Int A573f0b72c045df9717844e57b6be0f5

Quantensprung in die Multi-Cloud mit HyperStore 7

Cloudian hat mit HyperStore 7 eine neue Version seiner Scale-Out Storage-Plattform…
Tb W190 H80 Crop Int A6d123785255a923989fd0bca72d7744

JPlatform 10: Jalios bietet neue kollaborative Plattform an

Jalios, französischer Hersteller kollaborativer Intranet- und Enterprise Social Network…
Tb W190 H80 Crop Int 3c8ec30853a409cbbd4dcf4c6f3b827d

WinZip 22 Enterprise unterstützt die Umsetzung der DSGVO

Unternehmen, Organisationen und Behörden sind durch die ab Mai 2018 geltende…
Smarte News aus der IT-Welt

IT Newsletter


Hier unsere Newsletter bestellen:

 IT-Management

 IT-Security