Scriptless SAP Testautomatisierung mit ALM und Turnkey als Test-Framework

Tutorial über SAP Testautomatisierung mit TurnKey cFactory als „Data-Driven“ Test-Framework

SAP Test Automation

Über TurnKey cFactory

Das Unternehmen TurnKey Solutions wurde 1989 in den USA gegründet. Seit 1995 ist die Firma technologischer Partner von HP und hat maßgeblich bei der Entwicklung von Business Process Testing (BPT) unterstützt. Mit dem Tool „cFactory“ hat Turnkey eine Möglichkeit für Tester geschaffen, Anwendungen automatisiert zu testen, ohne dabei selbst Skripte erstellen zu müssen.

Das Scriptless und Data-Driven Test-Framework

Scriptless Testautomatisierung nimmt dem Tester dabei einen wesentlichen Teil der Arbeit bei der Erstellung automatisierter Tests ab. Programmierkenntnisse sind somit keine notwendige Voraussetzung mehr, um eine Anwendung (per automatisierten Testskript) testen zu können. Da es sich bei automatisierten GUI-Tests in den meisten Fällen um die Eingabe und Validierung von Daten handelt, wird immer häufiger zum „Data-Driven“ Framework gegriffen. Damit können anhand der übergebenen Daten Testfälle in der Abarbeitung gesteuert werden. Wenn diese zwei Technologien aufeinandertreffen, entsteht ein Produkt, das einfaches, schnelles und übersichtliches Testen ermöglicht.

cFactory“ vereint beide Ansätze. Dieses Tool ist einfach und benutzerfreundlich gestaltet. „Learn from Application“ macht es möglich eine Maske zu erfassen und als Komponente abzuspeichern. Über den „DataSheet Manager“ können die Daten angepasst werden, die während des Tests gefordert sind.

Turnkey cFactory

Turnkey cFactory

TurnKey Solutions arbeitet eng mit den Tools von HP (insbesondere ALM und UFT) zusammen, genauer gesagt ist es darin eingebettet. Um das gesamte Paket nutzen zu können, werden HP Application Lifecycle Management und HP Unified Functional Testing mit Business Process Testing benötigt. Das ist gleichzeitig auch der größte Knackpunkt der Lösung, denn welcher Kunde hat schon alle drei HP-Produkte vollumfänglich im Einsatz? Sind diese Voraussetzungen jedoch gegeben und ist MS Excel vorhanden, kann komfortabel gearbeitet werden.

Die Erstellung der Komponenten funktioniert über das Object Repository von UFT. Nachdem von cFactory ausgehend der Befehl gegeben wurde die Anwendung „kennen zu lernen“, kommt UFT in den Vordergrund um die Maske aufzunehmen. Empfehlenswert ist es UFT vor dem Starten von cFactory zu öffnen und dabei die entsprechenden Add-ins zu laden. Denn vor dem Aufnehmen der Komponente muss die Zielanwendung ausgewählt werden.

TurnKey spielt seine Stärken besonders bei den ERP-Systemen SAP, Oracle und PeopleSoft aus, hier kann mit einer sehr effizienten und schnellen Testautomatisierung gepunktet werden. Um einen Einblick in das Tool zu bekommen, folgt ein beispielhaftes Tutorial über Testautomatisierung von SAP.

Beispiel anhand einer SAP Testautomatisierung

Auswahl SAP GUI in cFactory

Auswahl SAP GUI in cFactory

Das Test-Framework verwendet hauptsächlich die Funktionalität von UFT zur Testautomatisierung, vor allem das Object Repository, wird aber noch zusätzlich durch Konfigurationsdateien unterstützt. Durch einen Klick auf die gewünschte SAP Maske werden im Hintergrund alle wichtigen Informationen geladen.

Auswahl des Bereichs für SAP Testautomatisierung

Auswahl des Bereichs für die SAP Testautomatisierung

Der Tester hat zur Testautomatisierung nun die Möglichkeit den Bereich auf ein ausgewähltes SAP Element einzuschränken oder die gesamte Seite mit allen SAP Objekten aufzeichnen zu lassen. Dabei kann eine Maske in mehrere Komponenten unterteilt sein, um eine bessere Übersicht zu garantieren. Außerdem kann automatisch zu jedem Abschnitt eine Verification-Komponente angelegt werden.

Hier besteht das SAP Fenster aus Header, Tab-Bereich, Tabelle und einem Footer. Speziell bei Anwendungen mit mehreren Tabs ist ein mehrfaches „Learn From Application“ notwendig, da nur der sichtbare Bereich aufgezeichnet werden kann.

Auswahl SAP Object

Auswahl SAP Object

cFactory.05SAP.automation.Object.Filter
cFactory.06.SAP.testautomation.select.component

Durch das Bestätigen des Select-Buttons wird jede ausgewählte SAP Komponente in TurnKey cFactory als einzelner Tab erstellt. Dies sieht wie folgt aus.

cFactory.07.SAP.testautomation.Objects

Die SAP Objekte werden automatisch aufgelistet und nach den Bezeichnungen in der Anwendung benannt. Nur die Buttons werden nicht separat in die Tabelle übernommen. Dafür gibt es eine eigene Operation ClickButtonText_TKS, der man später in der Datentabelle als Value den Namen des Buttons übergibt. Auch alle anderen SAP Objekte bekommen dort ihre Werte.

Die erstellten Komponenten können mit den Parametern im ALM gespeichert werden, wenn zuvor die Verbindung hergestellt wurde. Auch eine lokale Speicherung ist möglich. Die Namen entsprechen jeweils dem Titel der SAP Maske und einem beschreibenden Zusatz, wenn mehr als eine Komponente ausgewählt wurden, können aber auch individuell angepasst werden.cFactory.08.SAP.Test.automation.save.as

cFactory.09.SAP.Testing.ALM.jpg

 

 

TurnKey Solutions cFactory kann alles, was mit HP Business Process Testing in ALM und UFT auch möglich ist. Der Vorteil besteht darin, dass die Skripterstellung gänzlich wegfällt. Deshalb ist der Weg im ALM derselbe wie bei der Erstellung eines  Business Component Tests. Die Komponente wurde eben schon erstellt und liegt bereits im Business Component Modul vor. Als nächstes wird ein Test vom Typ Business-Process benötigt, der die Komponente enthalten soll. Wichtig: Jedem Test muss die Data Load Komponente der entsprechenden Anwendung zugeordnet werden. Diese sorgt dafür, dass das Zusammenspiel der Objekte und deren Parameter funktioniert.cFactory.10.SAP.testing.ALM.Filter.objects

cFactory.11.SAP_test_automation_ALM_Test_Plan

Im ALM-Modul Test Lab wird anschließend ein Test Set erstellt, welchem man verschiedene Testfälle zuordnen kann. Sobald TurnKey auf dem System installiert wurde, werden 3 weitere Felder für ein Test Set benötigt: Data Source, Upload und Screen Clip.cFactory.12.SAP_test_automation_ALM_test_set_fields

Screen Clip ist ein Flag, über welches festgelegt wird, ob der Datentabelle Screenshots hinterlegt werden soll. Da in den Datentabellen während des Tests auch Änderungen vorgenommen werden können (u.a. können Werte vererbt werden), kann über das Feld Upload entschieden werden, ob kein Update stattfinden soll, die ursprüngliche Tabelle archiviert oder überschrieben werden soll. Data Source bestimmt die Quelle der Daten. Obwohl die Datentabelle auch im Test Plan erstellt werden kann, ist es ratsam diese im Test Set zu hinterlegen. Damit können auch verschiedene Testfälle miteinander verknüpft werden, sodass ein Testfall-übergreifender Datenfluss entstehen kann. Das fördert auch die Wiederverwendbarkeit von automatisierten Testfällen, wenn man diese modular gestaltet.cFactory.13.SAP_test_automation_ALM_test_sets

Ein weiteres Testing-Tool von TurnKey neben cFactory ist der Data Sheet Creator. Darüber kann die Testdaten-Tabelle generiert werden, welche bei einer bestehende ALM-Verbindung automatisch an das ausgewählte Test Set bzw. den ausgewählten Test als Attachment gehangen wird.cFactory.14.SAP_test_ctest_data_sheet_creator

cFactory.15.SAP_Test_automation_ALM_Test_set_Excel

Der Data Sheet Creator hat eine fertige Excel-Datei inklusive Makros erstellt, in die nur noch die Daten eingetragen werden müssen. Es ist unbedingt notwendig, dass Excel auf demselben Rechner installiert ist, auf dem auch der ALM Client gestartet wurde. Ansonsten ist es nicht möglich die Daten anzupassen.cFactory.16.SAP_Test_automation_ALM_Excel_content

Die Tabelle enthält zunächst nur die Objekte der SAP Komponente und einen New Scenario Button. Der braune Balken trennt Komponenten voneinander. Ein Datensatz ist ähnlich einer Iteration zu sehen, wobei nicht direkt alle Szenarien ausgeführt werden. Durch den Klick auf New Scenario wird eine Zeile hinzugefügt, in deren Spalten die Werte eingetragen werden können. In der Spalte A wird ein Szenario-Name definiert, der später für die Ausführung wichtig wird. Das Ergebnis ist im nächsten Bild zu sehen.

cFactory.17.SAP_Test_automation_ALM_Excel_content2

Bevor die Ausführung gestartet werden kann, gilt es noch letzte Anpassungen vorzunehmen. Dazu geht es zurück zum Test Plan zu der Data Load-Komponente des erstellten Tests. Dort müssen die Iterationen angepasst werden. Der Parameter DataSheet bekommt als Wert den Namen des Excel Sheets – hier datasheet_DataLoad 1. Der Wert {DataScenario} für den Parameter DataScenario ist ein Platzhalter für den Endwert im Test Lab.cFactory.18.SAP_Test_automation_ALM_Excel_content3

cFactory.20.SAP_testing_Iterations

Das Data Scenario wird endgültig in den ALM Execution Settings im Test Set festgelegt. Hier wird der Scenario Name benötigt, der zuvor im Data Sheet definiert worden ist.cFactory.19.SAP.test.ctest.test

Jetzt kann das Test Set ausgeführt werden. Die Werte werden in die SAP GUI eingetragen, der Button wird geklickt und der automatisierte Test ist Passed.

cFactory.21.SAP_automation_SAP_test_run

cFactory.22.SAP_automation_test_clicked

cFactory.23.SAP.test..automation.Automatic.Runner

cFactory.24.SAP_automation_test_results_ALM

Der Report wurde von TurnKey angepasst, ist aber sehr übersichtlich gehalten, auch mit deutlichen Fehlermeldungen. In diesem Beispiel ist ein Feld nicht editierbar, obwohl ein Wert übergeben wurde.

cFactory.25.SAP.automation.test.results.ALM2

Und wenn sich die Anwendung einmal ändert, ist es nicht notwendig die gesamte Komponente noch einmal neu aufzunehmen. TurnKey cFactory selbst vergleicht die aktuellen Objekte mit der neuen Maske und der Nutzer kann festlegen, welche Änderungen er anpassen möchte. Wenn beispielsweise ein Objekt hinzukommt, öffnet man die Komponente in cFactory, klickt auf Update From Application und nimmt die Maske erneut auf. Daraufhin erscheint ein Fenster, welches die Unterschiede farblich markiert. Ein Klick auf Accept All ändert direkt die Komponente und nach dem Speichern ist sie auch im ALM aktuell. In dem kurzen Beispiel gab es zum Beispiel das Item Net value_2 noch nicht.cFactory.26.cFactory_see_tests

 

cFactory.27.cFactory_test_results1

cFactory.28.cFactory_test_results

So einfach kann SAP Testautomatisierung sein. Schnell, einfach, unkompliziert – das sind die drei Eigenschaften, die TurnKey cFactory hervorheben. Zudem arbeitet es direkt mit den Produkten von HP (insbesondere ALM und UFT) zusammen, die gerade in großen Konzernen ausgiebig genutzt werden. Das Tool zu nutzen bedeutet also “eine Erweiterung” zu nutzen und keinen Einstieg in ein neues System. Es ist für jeden interessant, der mit automatisierten Tests arbeitet. Es bietet die Möglichkeit, Anwendungen kurzerhand aufzunehmen und mit Daten zu befüllen. Die Verbindung mit ALM und UFT machen das Testautomatisierungs-Tool komplett und fördern das Zusammenspiel von „Scriptless“ Testautomatisierung und Data-Driven-Testing. Für mich ist TurnKey schon jetzt ein Tool, mit dem ich gern arbeiten werde. Es stellt eine sehr komfortable Alternative zu Testskripten dar. Ein Klick, und die Komponente steht bereit.

Fazit

TurnKey Solutions ist ein Test-Framework, das für jeden interessant ist, der mit automatisierten Tests arbeitet. Es bietet die Möglichkeit, Anwendungen kurzerhand aufzunehmen und mit Daten zu befüllen. Die Verbindung mit ALM und UFT machen das Tool komplett und fördern das Zusammenspiel von „Scriptless“ Automatisierung und Data-Driven-Tests.

Anmerkung der Redaktion:

Herzlichen Dank für das ausführliche Tutorial der Proficom. Bei Fragen zum Artikel oder generell zum TurnKey cFactory Framework, Verknüpfung zu ALM oder zur SAP-Testautomatisierung, hinterlassen Sie gerne einen Kommentar oder melden sich per Mail direkt bei der Autorin oder unserer Board-Redaktion. Wenn Ihnen der Artikel gefällt, würdigen Sie dies gerne übe einen Social-Share über unsere Social-Network-Buttons.

Fanden Sie den Artikel hilfreich?
[Gesamt: 5 Durchschnitt: 5] -

Leave a Reply