Entwicklung

HP UFT 11.5 - End-to-end-Tests von GUI bis API

Neulich im Internet: Die Buchung der Zugfahrkarte erfolgte völlig problemlos, inklusive Zahlung per Kreditkarte und Bestätigungs-Email an den Auftraggeber. Ein komplexer Prozess, an dem viele verschiedene Systeme, Applikationen und Netzwerke beteiligt sind.

Doch wie lassen sich solch vielschichtige Prozesse effektiv testen? Funktioniert das durchgängig oder müssen einzelne Komponenten auch separat getestet werden? Mit dem neuen HP UFT 11.5 scheint sich die Testautomatisierung deutlich

 

Von außen

Wie im ersten Teil angekündigt, wurde das HP-Tool zur Testautomatisierung aufgefrischt und bietet einige interessante Features. Was als erstes ins Auge fällt ist die neue Bedienung. Dank der modernen Oberfläche finden sich Testautomatisierer schnell zurecht und können das Werkzeug so intuitiv bedienen. Doch das allein reicht nicht, um Tester glücklich zu machen.

 

Innere Werte

HP UFT 11.5 bietet den Anwendern – je nach Lizenzmodell – die Einbindung verschiedener Testarten (z.B. GUI, API) in das jeweilige Testscript. Die Möglichkeit, Daten zwischen den unterschiedlichen Komponenten zu übergeben oder zu übernehmen, erlaubt somit echte „End-to-End“-Tests und den Aufbau komplexer Testszenarien. Vom Benutzerinterface (Funktioniert der Button?) bis zur untersten Ebene der Anwendung (Werden die Daten korrekt übergeben / übernommen?) können mit HP UFT 11.5 komplette Geschäftsprozesse geprüft werden.

  • Vorteil: nur mit HP UFT lässt sich ein integriertes Testszenario für Multi-Layer-Applikationen abbilden


Zurück zu unserem Beispiel der Fahrkartenbuchung heißt das: Die Eingabe per Web-Frontend (GUI) und das Ansprechen der beteiligten Systeme wie Sitzplatzreservierung, Bezahlvorgang und Druckaufbereitung (API) werden in einem Test automatisiert und entsprechend geprüft.

profi.com-Experte Thomas Jähnig sagt: „Die Tests sind unkompliziert per 'drag & drop' zusammengestellt, ohne eine einzige Zeile Programmcode schreiben zu müssen. Die Zusammenstellung von Business Process Tests kann jetzt direkt in HP UFT geschehen.“ Andere Nutzer schätzen die zeitlichen Einsparpotentiale beim Testdesign und die gesteigerte Testabdeckung bei gleichen Ressourcen. Ein eindeutiger Gewinn in Sachen Effektivität, der letztlich der Softwarequalität zu Gute kommt.

 

Komfortable Integrationen

Zusätzlich ermöglicht HP UFT den Import von SoapUI-Testsuiten. Die beliebte Open Source Testapplikation lässt sich spielend integrieren. Anwender, welche von SoapUI auf HP UFT wechseln oder ihre SoapUI-Tests auch in HP UFT-Testfällen verwenden möchten, können diese Testfälle toolgestützt konvertieren und so den Migrationsaufwand senken. Die Verbindung zu Continous Integration Systemen wie Hudson und Jenkins ermöglicht die Verwendung von HP UFT-Tests zur automatischen Validierung von Software Builds.

  • Vorteil: durch die Kombination von Oberflächen- und Schnittstellentests ermöglicht HP UFT das Testen verschiedener Stufen und Kriterien mittels eines Tools.


Häufigere Tests verbessern die Qualität

Wie bereits beschrieben, lassen sich mit HP UFT 11.5 komplette End-to-End-Tests realisieren. Verschiedene andere Tests sind separat ebenfalls ausführbar, was das Zusammenspiel zwischen Entwicklern und Testern vereinfacht. Folgende Testarten lassen sich mit HP UFT 11.5 umsetzen:

  • UI-Tests und Akzeptanztests (Prüfung von Testergebnissen im Backend)
  • Komponententests und Prüfung einzelner Dienste
  • Integrationstests (individuelle Software-Module werden kombiniert und als Gruppe getestet)


Mit der Prüfung ohne grafische Benutzeroberfläche – ausschließlich auf Basis der zur Verfügung stehenden Dienste – sind Testautomatisierer in der Lage, die Komponenten unabhängig von den Frontend-Entwicklern zu testen. Diese Backend-Tests sind im Vergleich zu GUI-Tests deutlich wartungsärmer, da sich diese oft nur nach wirklicher Anpassung der Funktionalität ändern.

  • Vorteil: häufigere und kontinuierlichere Tests erhöhen die Software-Qualität und tragen zu einer früheren Fehlererkennung bei


Ein weiterer Grund: Weil die GUI häufig dem allgemeinen Entwicklungsstand hinterherhinkt, sind Tests in Abhängigkeit von der GUI oft nur unter Zeitdruck am Ende einer Software-Entwicklungsperiode umsetzbar. Nichtsdestotrotz sollte natürlich auch die GUI weiterhin getestet werden!

Für unser fiktives Fahrkartenbuchungsbeispiel bedeutet dies, dass die Komponente Zahlungsvorgang auch ohne die Eingabe von Testdaten in der Weboberfläche getestet werden kann.

Der profi.com-Experten-Tipp:

Das Top-Feature für mehr Zeitersparnis: Sollen einzelne Ausführungsschritte eines Service (erneut) geprüft werden, steht den Testern erstmals ein eigenes „run step“-Feature zur Verfügung. Jeder Teil eines mehrstufigen API-Tests lässt sich, wie schon lang von den GUI-Tests gewohnt, während der Anpassung separat ausführen und macht keinen kompletten Testdurchlauf nötig!

Lesen Sie in Teil 3: Features für höhere Qualität und Effektivität in der Software-Entwicklung