Vor kurzem erschien die neueste UFT-Version 15.0.2, welche für erfahrene Testautomatisierer ein paar freudige Überraschungen bieten und auch Neueinsteigern auf diesem Gebiet Erleichterung bei der Einarbeitung verschaffen dürfte.
Im November 2020 veröffentlichten wir bereits zwei Artikel über die Neuerungen und Vorzüge von Micro Focus Unified Functional Testing (UFT) 15.0 und 15.0.1. Für den vorliegenden Beitrag haben wir wieder die interessantesten Features und Änderungen getestet und bewertet. Die wichtigsten Infos zu den Neuerungen mit UFT 15.0.2 fassen wir hier für Sie zusammen.
Object Identification Center in der Tech Preview
Eine besonders erfreuliche Veränderung ist in unseren Augen die Einführung des Object Identification Center (OIC) für UFT One. Anwender von UFT Developer (ehem. LeanFT) kennen das OIC und einige seiner Funktionen bereits. Seit der UFT-Version 15.0.2 steht dieses auch als Tech Preview und mit zusätzlichen Funktionen für UFT One zur Verfügung. Es ist anzunehmen, dass das OIC langfristig den Object Spy ablösen wird. Dieses ist bereits als Standardtool zur Objekterkennung vorausgewählt. Der Object Spy kann aber weiterhin manuell ausgewählt und genutzt werden.
Das OIC für UFT One verfügt auf den ersten Blick über die gleichen Fähigkeiten wie der Object Spy: Die automatische, künstlich intelligente (KI) Objektprüfung sowie der Hover-Modus sind wie gewohnt aktivierbar. Dabei werden für den Hover-Modus zusätzliche Einstellungen wie Hervorhebung und Zeitüberschreitung angeboten.
Hinzu kommen nützliche Features, die Anwender bereits vom Object Identification Center in der entwicklernahen UFT-Developer-Variante kennen: Mittels „Code kopieren“-Funktion kann für die programmatische Verarbeitung von Objekten im Testskript eine vollständige Liste der Objekteigenschaften und Eigenschaftswerte als Key-Value-Paare in die Zwischenablage kopiert werden. Durch die „Bild erfassen“-Funktion wird auf Wunsch ein automatisch erstellter Screenshot des erspähten Objekts lokal auf der UFT-Maschine gespeichert, beispielsweise um diesen später manuell als Insight Object hinterlegen zu können. Hier hätten wir uns die Option gewünscht, den Screenshot direkt mit einem Insight Object verknüpfen zu können. Perspektivisch könnte eine solche Funktionalität in Zukunft noch kommen.
Eine weitere besondere Funktion steht nun ebenfalls für UFT One zur Verfügung, die eine beachtliche Zeitersparnis bedeuten kann. Mit dem „Multi-object Spy“-Feature, welches für UFT Developer bereits seit längerem zur Verfügung stand, können nun auch in UFT One bei Aktivierung mehrere Objekte auf einer Seite gleichzeitig erspäht werden (siehe Abbildung 1).
Abbildung 1: Auflistung von Objekten im OIC, „erspäht“ mit dem Multi-object Spy
Wo mit dem Object Spy noch jedes Objekt einzeln identifiziert, dem Repository hinzugefügt und anschließend nacheinander bearbeitet werden muss, können mit dem OIC nun alle gewünschten Objekte gesammelt werden, ehe eine Weiterverarbeitung stattfindet.
Besonders hervorzuheben ist hier, dass mit dem OIC die Eigenschaften und Namen aller erspähten Objekte noch während der Erfassung bearbeitet werden können, bevor diese einem Repository hinzugefügt werden. Dieses Feature ermöglicht einen fließenderen Workflow und macht die nachträgliche Anpassung von Objekten im Objekt-Repository initial nahezu überflüssig. Was hier allerdings noch fehlt ist die Möglichkeit, Eigenschaftswerte zu parametrisieren. Es ist möglich, Konstanten zu verwenden, sowie reguläre Ausdrücke einzusetzen, aber eine Verknüpfung mit Inputparametern oder DataSheets steht noch nicht zur Auswahl. Auch diese Funktionalität erhoffen wir uns in zukünftigen UFT-Versionen. Dafür kann bereits im OIC ausgewählt werden, zu welchem Repository die erspähten Objekte hinzugefügt werden sollen. Die Neuanlage eines Repositories ist ebenfalls problemlos im Center möglich.
Bei unseren Versuchen sind wir auf ein paar Schwächen gestoßen, die das Object Identification Center derzeit noch aufweist. Der Spähvorgang für multiple Objekte hintereinander hat sich in seltenen Fällen als stockend erwiesen und es zeigte sich, dass kein Abgleich mit bereits erspähten Objekten stattfindet. Bei der Nutzung der Funktion ist es somit möglich, mehrfach das gleiche Objekt zu spähen und im OIC zu bearbeiten, ohne dass dies zunächst vom OIC gemeldet wird. Erst beim Hinzufügen der Objekte zum gewünschten Repository werden nur die neuen Objekte beachtet – sofern deren Namen nicht geändert wurden – und bereits vorhandene Objekte ignoriert. Der Anwender ist also gut beraten, die Anzahl gleichzeitig erspähter Objekte überschaubar zu halten und sich für den Spähvorgang ein System zurechtzulegen, um Dopplungen im OIC zu verhindern.
Besonders die automatische KI-Erkennung zeigt in Verbindung mit dem Multi-Object-Spy eine große Schwäche. So wurde in all unseren Versuchen das zuletzt erkannte KI-Objekt fälschlicherweise bei allen vorher erspähten Objekten angezeigt, unabhängig davon ob in der KI-Erkennungsansicht ein wie auch immer geartetes KI-Objekt für diese existiert (siehe Abbildung 2). Beim Single-Object-Spähvorgang zeigte sich das OIC in Verbindung mit dem KI-Feature hingegen ebenso effektiv wie der Object Spy.
Abbildung 2: Fehlerhafte KI-basierte Objekterkennung mit dem Multi-object Spy
Alles in allem stellt die Einführung des Object Identification Centers für UFT One einen guten Schritt nach vorne dar. Derzeit handelt es sich bei dem Tool noch um eine Tech Preview und die vorgenannten Schwächen machen besonders die Nutzung in Kombination mit dem KI-Feature schwierig. Sind diese Probleme in zukünftigen Versionen jedoch erst einmal beseitigt, wird das neue OIC als Vereinigung von Object Spy und UFT-Developer-OIC ein unschätzbares Werkzeug für alle Arten und Größen von Testprojekten darstellen. Wird die automatische KI-Erkennung ausgeklammert, glänzt das Tool schon in der UFT-Version 15.0.2 mit einer guten und relativ stabilen Performance.
Konsequente Verbesserungen des KI-Features
So wie bereits seit der Einführung des KI-basierten Testfeatures in der UFT-Version 14.53 mit jeder weiteren Version seither, wird auch mit UFT 15.0.2 kräftig an der Entwicklung des künstlich intelligenten Features gearbeitet. Micro Focus bietet begeisterten KI-Anwendern und KI-Interessierten hilfreiche Verbesserungen.
Abbildung 3: Aufnahmefunktion für KI-basierte Tests
Der Hersteller winkt unter anderem mit einer Aufnahme-Funktion speziell für KI-basierte Tests, mit der ein Testskript vom automatischen Setzen des richtigen Kontextes über das Hinzufügen von Objektinteraktionen von Anfang bis Ende aufgezeichnet werden kann (siehe Abbildung 3). Mit der Schaltfläche „KI-Datensatz“ in der UFT-Werkzeugleiste wird zunächst die Inspektion einer ausgewählten Browserseite nach KI-Objekten durchgeführt. Anschließend können direkt auf der Browserseite die einzelnen aufzuzeichnenden Schritte anhand der erkannten Objekte ausgeführt werden (siehe Abbildung 4). Eine Re-Inspektion der Seite findet automatisch statt, wodurch es beispielsweise überflüssig wird, nach der Navigation zu einer neuen Seite – wie in der KI-Erkennungsansicht in früheren UFT-Versionen stets der Fall – die Seite neu erfassen und scannen zu lassen. Zusätzliche Optionen wie das Festlegen von Relationen zwischen Objekten und die Erfassung einfacher Checkpoints (Exist, Not Exist) stehen während der Aufzeichnung zur Verfügung. Eine Schaltfläche zum Öffnen des Object Identification Centers ist ebenfalls integriert, um gegebenenfalls nicht via KI erfassbare Objekte identifizieren und dem Object Repository hinzufügen zu können. An dieser Stelle hätten wir uns allerdings eine bessere Integration des OIC gewünscht. Derzeit tauchen via OIC erfasste Objekte nicht im aufgezeichneten Skript auf, sondern müssen nach der Aufzeichnung manuell an den richtigen Stellen eingepflegt werden. Dieses Vorgehen kann bei längeren Aufzeichnungen undurchsichtig werden und die Nachbearbeitung des Skripts möglicherweise etwas mühsam gestalten.
Abbildung 4: Interaktion mit einem KI-TextInput-Objekt während der Aufnahme
Neben der Aufzeichnungs-Funktion hat Micro Focus insgesamt das Handling und die Erkennung von KI-Objekten verbessert. Bei der Ausführung eines Skripts mit KI-Elementen wird automatisch auf der angezeigten Seite gescrollt, wenn ein KI-Objekt nicht im angezeigten Abschnitt liegt. Desweiteren wurden einige Operationen angepasst, die Palette der unterstützten Kontrolltypen erweitert sowie die Erkennung von Schaltflächen anhand von Bilddateien ermöglicht. Die Texterkennung wurde auf acht Sprachen erweitert, darunter auch Deutsch, vereinfachtes Chinesisch und Russisch. Eine Umstellung auf Texterkennung via OCR-Engine während der Nutzung des KI-Features ist zudem möglich, um die derzeit stellenweise noch dürftige KI-Textobjekterkennung zu erleichtern.
Besonders interessant für das Testen von Applikationen, die sich noch in einem frühen Entwicklungsstadium befinden, könnte die „KI-Modell-Erkennung“ sein. Hier kann ein lokal gespeicherter Mockup eingelesen und auf KI-Objekte geprüft werde. In der KI-Erkennungsansicht kann dabei wie gewohnt mit visuellen und Textobjekten interagiert und diese per Drag & Drop in das UFT-Skript gezogen werden. Sofern also darauf geachtet wird, für die KI-Objekte stabile Identifikatoren auszuwählen, die in der fertig entwickelten Applikation nicht maßgeblich von den Mock-Objekten abweichen, kann mit der KI-Modell-Erkennung bereits früh eine umfangreiches Testportfolio mit moderatem Wartungaufwand aufgebaut werden.
Für Testautomatisierer, die mit ihrem Testunterfangen gerne stärker auf KI-Objekterkennung setzen und auch bereits bestehende technologiebasierte Tests umwandeln möchten, hat Micro Focus mit UFT 15.0.2 einen Transformationsassistenten zur Verfügung gestellt. Ist dieser bei einem Testdurchlauf in den Einstellungen aktiviert, werden Vorschläge für KI-basierte Testschritte angeboten.
Unser Fazit ist, dass das KI-Feature sich seit der Einführung enorm entwickelt und inzwischen Formen angenommen hat, die es langsam aber sicher zu einer ernstzunehmenden und stabilen Ergänzung der ursprünglichen Objekterkennungstechnologie wachsen lässt. Die Anzahl an erkannten KI-Objekten ist spürbar gestiegen. Wo in den ersten Versionen noch eher ein kleiner Anteil von Webelementen, teils nicht reproduzierbar, erkannt wurde und meist anhand wenig stabiler und unterscheidbarer Eigenschaften ansteuerbar war, lassen sich heute u.a. dank verfeinerter Texterkennung und erweiterter Kontrolltypen weitgehend verlässliche KI-Objektinteraktionen im Testskript festhalten.
Weitere Neuerungen in UFT 15.0.2
Neben den bereits näher ausgeführten Verbesserungen, die unserer Ansicht nach mit der neuen UFT-Version 15.0.2 besonders erfreulich sind, erwarten UFT-Anwender zahlreiche weitere wertvolle Optimierungen. Einige davon fassen wir im Folgenden der Übersicht halber zusammen. Eine erschöpfende Auflistung aller Neuerungen finden Sie in der Sektion „What’s New“ unter https://admhelp.microfocus.com/uft/en/15.0-15.0.2/.
Einige UFT-Elemente wie das Objekt-Repository oder die Schlüsselwortansicht (Keyword View) erhalten mit der neuen Version ein unaufdringliches, optisches Makeover. Auch das neue Dark Theme aus der Vorversion wurde für weitere Fenster umgesetzt, ist jedoch leider noch immer nicht flächendeckend vorhanden. Hier bleiben beispielsweise die Fenster für Einstellungen oder die Objekteigenschaften-Sektion im Objekt-Repository weiterhin hell (siehe Abbildung 5).
Abbildung 5: Das Objekt-Repository im dunklen Design
Im Bereich CI/CD bietet UFT 15.0.2 Verbesserungen für die Jenkins-, Azure-DevOps- und Bamboo-Plugins. Unter anderem erfahren Bamboo-Nutzer spürbare Erleichterungen im Umgang mit Testparametern, da es nun möglich ist, Input-Parameter mittels MTBX-Datei an den Server zu übergeben. In Azure Devops kann ein Report nach der Testausführung nun direkt auf dem Server angeschaut werden und für Jenkins wurden die Handhabung von ALM-Zugangsdaten, sowie der Neustart fehlgeschlagener Tests erleichtert.
Anwender haben mit der neuen Version inzwischen die Möglichkeit, mit dem ParallelRunner auch API-Tests parallel sowie nach Bedarf in Kombination mit GUI-Tests ausführen zu lassen. Zuvor konnten ausschließlich GUI-Tests mit dem ParallelRunner gestartet werden und auch API-Testaufrufe aus GUI-Tests heraus schlugen fehl. Dieses Problem ist laut Micro Focus damit behoben.
In den Bereichen Web- und Mobile-Testing gibt es ebenfalls ein paar Anpassungen. So ist UFT nun in der Lage, auch bei vergrößerter oder verkleinerter Seitenansicht (Zoom) Objekte im Browserfenster zu erkennen, selbst wenn diese nicht mehr innerhalb des angezeigten Bereichs, aber auf der Seite vorhanden sind. Dies bezieht sich derzeit jedoch noch ausschließlich auf Chrome, Chromium Edge, Firefox, IOS UFTM Browser und IOS Safari.
Speziell beim Web-Testing setzt Micro Focus zudem auf Stärkung der Performance zur Reduzierung von Testausführungszeiten. Dafür steht eine neue Option zur Beschleunigung für Chrome, Chromium Edge und Firefox in den Einstellungen unter GUITests > Web zur Verfügung. Die Beschleunigung kommt als Tech Preview und ist derzeit noch beschänkt auf zehn Web-Kontrollobjekte und vier Methoden (z.B. Exist und CaptureBitmap). Ein Performance-Boost lohnt sich somit erst ab einer höheren Anzahl an betroffenen Methodenaufrufen. Bei unseren Kurztests, welche kleinere Workflows wie beispielsweise einen Warenkorb-Checkout abbilden, war eine Zeiteinsparung von etwa 2-3% zu erkennen. Vor dem Hintergrund umfangreicherer Tests lässt sich diese Zahl höchstwahrscheinlich weiter ausbauen.
Neben einer Erweiterung des SAP-Addin-Supports für Chrome und Edge, der Bereitstellung eines neuen und schlankeren Docker-Images („uft-lite“) für noch schnellere Testausführung, sowie der Ausweitung des Technologiesupports auf die neuesten Browserversionen, finden sich weitere für den einen oder anderen Testbereich nützliche Anpassungen, die einen Blick auf die UFT-Version 15.0.2 lohnenswert machen.
Fazit
Unserer Ansicht nach lohnt sich ein Upgrade auf UFT 15.0.2 wieder besonders dann, wenn Sie …
- vom KI-basierten Testen begeistert sind, eine Aufnahme-Funktion herbeigesehnt haben und auch bereits bestehende Testfälle auf KI-Basis umstellen möchten
- regelmäßig mit vielen Objekten im Object Spy hantieren müssen und sich eine Vereinfachung des Spähprozesses wünschen
- sich schon immer gefragt haben, warum es nicht möglich sein soll, API-Tests mit dem ParallelRunner auszuführen
- umfangreiche Web-Testautomatisierungsprojekte handhaben und sich eine Verkürzung der Testausführungszeiten wünschen
Treffen jedoch keine der genannten Punkte auf Sie zu, dann empfehlen wir Ihnen, sich unsere vorangegangenen What‘s-New-Artikel anzuschauen. Möglicherweise werden Sie bei einer der vorangegangen Versionen fündig und behalten im Hinterkopf, dass alle dort aufgeführten Neuerungen auch in der UFT-Version 15.0.2 vorhanden und stellenweise bereits deutlich verfeinert wurden.