Handbuch

B.3
QF-Test Version 4.5

VideoVideo zu den neuen Features in Version 4.5: https://www.qfs.de/de/yt/neue-features-45.html.

B.3.1
Version 4.5.2 - 20. März 2019

Neue Features:

  • Es wird nun Eclipse/SWT 4.11 bzw. "2019-03" unterstützt.
  • QF-Test kann nun automatisch ChromeDriver Bibliotheken herunterladen, wenn die mitgelieferte Version nicht zum gewählten Browser passt.

Beseitigte Bugs:

  • Beim Aufnehmen von Prozeduren wurden die zusammenfassenden Prozeduren für Panel Komponenten nicht generiert, wenn die Aufnahme nur für ein Panel gemacht wurde statt für das ganze Fenster.
  • Abbild-Checks funktionieren nun auch dann, wenn der Check mit aktivierter Bildkompression aufgenommen wurde und ein SecurityManager im SUT aktiv ist.
  • Wenn eine XML oder XSLT Bibliothek im Plugin-Verzeichnis von QF-Test installiert wurde, funktionierte die Erstellung von Reports nicht mehr.
  • Wurde eine nicht existierende Datei auf der Kommandozeile angegeben, öffnete QF-Test das Hauptfenster nicht, so dass der Prozess zu hängen schien.
B.3.2
Version 4.5.1 - 27. Februar 2019

Beseitigte Bugs:

  • In QF-Test 4.5.0 startete das SUT nicht mehr, wenn der QF-Test Agent über die Option Über QF-Test Agent verbinden deaktiviert wurde.
  • Der von ${qftest:java} gelieferte Pfad war nicht korrekt, wenn QF-Test mit dem Kommandozeilenargument -java <Programm> gestartet und der Parameter <Programm> dabei nicht als absoluter Pfad angegeben wurde.
  • Die Prozedur qfs.autowin.acrobat.saveAsText in der Standardbibliothek qfs.qft funktioniert nun auch für Adobe Acrobat Reader Versionen 19.010.20091 und höher.
  • Ein unvollständiger TreeTableResolver basierend auf der Standardimplementierung von getTreeColumn konnte zur Ausgabe eines Stacktrace in der Client-Konsole führen.
  • Web Im Headless Chrome wurden harte bzw. semiharte Doppelklicks nicht korrekt abgespielt.
  • Web In QF-Test 4.5.0 konnten SUT Skripte für Webtests nicht mehr auf Plugin-Jars im Plugin-Verzeichnis von QF-Test zugreifen.
  • SUT Skripte konnten nicht mehr auf die jniwrapper Bibliothek und das autowin Modul zugreifen.
  • Unter Windows 7 konnten beim Start von Webtests im WebDriver-Modus Exceptions auftreten.
B.3.3
Highlights in Version 4.5

Die folgenden wichtigen neuen Features wurden für Version 4.5 von QF-Test implementiert:

Beschreibung Weitere Info
Unterstützung für Electron Anwendungen Siehe Kapitel 17, unterstützte Electron Versionen in Abschnitt 1.1.2
Mobile Emulation im Schnellstart-Assistenten mit Unterstützung für neue Geräte Siehe Abschnitt 14.4
SWT ohne Instrumentierung Siehe Option Ohne SWT Instrumentierung verbinden
Unterstützung für Java 12 Nur SUT
Tabelle B.1:  Highlights in QF-Test Version 4.5
B.3.4
Änderungen mit möglichen Auswirkungen auf die Testausführung
  • Web Mit dem Schnellstart-Assistenten erzeugte Startsequenzen für Webanwendungen enthalten einen Aufruf der Prozedur qfs.web.ajax.installCustomWebResolver. Diese versucht, das genutzte AJAX Framework zu erkennen und einen passenden Resolver einzuhängen. Falls es keinen solchen Resolver gibt, wird ein minimaler generischer Resolver eingehängt. Für diesen Prozeduraufruf wurden in QF-Test 4.5 die Standardwerte geändert, so dass DIV und SPAN Knoten nun ignoriert und aus der Hierarchie der Komponenten entfernt werden. Diese Änderung hat keinen Einfluss auf bereits bestehende Startsequenzen, sollte aber im Hinterkopf behalten werden, falls Sie mit dem Schnellstart-Assistenten eine neue Startsequenz für eine Webanwendung mit bestehenden Tests erstellen. In diesem Fall sollten Sie den Parameter ignoreTags im generierten Aufruf von installCustomWebResolver zurück auf den leeren Wert setzen.
  • SWT

    Unter Linux können Eclipse/SWT Anwendungen der SWT Versionen 4.3 bis 4.9 wahlweise mit GTK2 oder GTK3 ausgeführt werden. In QF-Test Version 4.3 wurde Unterstützung für GTK3 mit SWT Versionen 4.6 und höher eingebaut. Bisher setzten allerdings mit dem Schnellstart-Assistenten generierte Startsequenzen die Environment-Variable SWT_GTK3 auf 0, wodurch alle SWT Versionen, die noch GTK2 unterstützen, dies verwenden.

    Beginnend mit QF-Test 4.5 wird diese Environment-Variable ignoriert. Sie wurde durch die Option Bevorzugte GTK Version für SWT (nur Linux) ersetzt, welche auf "2" oder "3" gesetzt oder leer gelassen werden kann, um den zur jeweiligen SWT Version passenden Standard zu verwenden.

    Unglücklicherweise werden SWT Anwendungen mit GTK2 auf neueren Linux Systemen zunehmend instabil und können unter starker Last, welche bei Ausführung mit QF-Test in maximaler Geschwindigkeit nicht ungewöhnlich ist, abstürzen. Solche Fehler können durch Aktivierung von XSync behoben werden, einer X11 spezifischen Option mit der X11 Events synchron verarbeitet werden. Diese kann allerdings die Geschwindigkeit beeinträchtigen. Wenn Sie Ihre SWT Anwendung mit GTK2 betreiben müssen und diese bisher stabil lief, können Sie die Option XSync für SWT mit GTK2 aktivieren (nur Linux) deaktivieren.

  • Die Verbindung zwischen QF-Test und dem SUT wird nun standardmäßig über das Loopback Interface (localhost) hergestellt. Für den seltenen Fall, dass QF-Test ein SUT auf einem anderen Rechner ansteuern muss, kann QF-Test mit dem Kommandozeilenargument -serverhost <Host> gestartet werden.
  • Bisher wurden Web-Tests fälschlicherweise immer unter Anwendung des QF-Test Classpaths gestartet. Dadurch waren evtl. in SUT-Skripten falsche Bibliotheken wie zum Beispiel "POI" geladen. Wenn Sie diese in Ihren SUT-Skripten vewenden möchten, so kopieren Sie die entsprechenden JAR-Dateien bitte explizit in das plugins/sut-Verzeichnis.
B.3.5
Nicht mehr unterstützte Software

Hinweis Eine detaillierte Aufstellung der Systemvoraussetzungen und der unterstützten Technologieversionen finden Sie in Abschnitt 1.1.

QFS bemüht sich um Rückwärtskompatibilität auch mit sehr alter Software. QF-Test läuft nach wie vor z.B. unter Windows XP und mit einem auf Java 6 basierenden SUT, aber wir können für Systeme, die von deren Herstellern nicht mehr unterstützt werden, keinen umfassenden Support bieten.

Unterstützung für die Safari Selenium Erweiterungen wurde entfernt, da Safari generell keine Erweiterungen mehr zulässt.

Bibliotheken für die Firefox Versionen 44-59 und die Eclipse/SWT Versionen 3.6 und älter sind nicht Teil der Standard-Installation von QF-Test. Sie werden noch gepflegt, aber nur eingeschränkt getestet. Für Eclipse/SWT 3.5 - 3.6 können Sie https://archive.qfs.de/pub/qftest/swt_legacy.zip herunterladen und in das swt Verzeichnis Ihrer QF-Test Installation entpacken. Für die Unterstützung älterer Browser wenden Sie sich bitte via support@qfs.de an QFS.

B.3.6
Version 4.5.0 - 14. Februar 2019

Neue Features:

  • Web Über seine Web-Engine unterstützt QF-Test nun auch das Testen von Electron Anwendungen. Informationen zu den unterstützten Versionen von Electron finden Sie in Abschnitt 1.1.2, Erstellung und Durchführung von Electron Tests sind in Kapitel 17 näher beschrieben.
  • Web Mit dem Schnellstart-Assistenten können nun auch Startsequenzen zur Emulation von mobilen Browsern erstellt werden. Zudem wurde die Auswahl an unterstützten Mobilgeräten aktualisiert und erweitert.
  • SWT Eclipse/SWT Anwendungen erfordern keine Instrumentierung des SWT Plugins mehr (mit Ausnahme älterer SWT Versionen unter Linux). Hiermit wird auch das Testen von WebStart basierten oder anderen speziellen SWT Anwendungen erleichtert. Weiter Informationen finden Sie bei der Option Ohne SWT Instrumentierung verbinden und in Abschnitt 42.3.
  • Es wird nun auch das Testen von SUTs mit Java 12 unterstützt.
  • Die Geschwindigkeit wurde an vielen Stellen verbessert, unter anderem beim Start von QF-Test selbst und von Browsern, bei der Initialisierung von Jython, von Skript-basierten Resolvern sowie bei der Event-Wiedergabe und Synchronisation - letzteres vor allem bei Webanwendungen. Die Effekte variieren abhängig von vorhandenen CPUs und Details des SUT zwischen kaum merklich und nahezu doppelt so schnell.
  • Abbildungen und Screenshots in Testsuiten und Protokollen werden nun in das WebP Format und damit deutlich effektiver komprimiert. Um den Übergang zu erleichtern unterstützt QF-Test schon seit Version 4.4 das Lesen solcher Dateien. In dieser Version wird WebP zum Standard, einstellbar über die Option Abbilder in Protokollen und Testsuiten komprimieren. Durch einfaches Laden und Speichern von Testsuiten wird das Format der enthaltenen Bilder nicht geändert um kein unnötiges Rauschen in der Versionsverwaltung zu erzeugen. Testsuiten können aber durch einen QF-Test Batchaufruf mit dem Kommandozeilenargument -compress transformiert werden.
  • Windows Die Fähigkeit, Fenster des SUT nach Bedarf in den Vordergrund zu bringen und den Eingabefokus zu setzen ist für eine stabile Testautomatisierung sehr wichtig. Unter Windows verwendet QF-Test nun eine neue, sehr zuverlässige Methode, Fenster nach vorn zu bringen, sofern die Option Beim Nach-vorne-bringen Fenster in den Vordergrund zwingen nicht deaktiviert ist.
  • Das Kontextmenü für Testsuite-Tabs in der Workbench-Ansicht von QF-Test enthält die neuen Einträge »Datei-Pfad in Zwischenablage kopieren« und »Im Explorer/Finder/Dateimanager anzeigen«.
  • Für aus QF-Test gestartete Prozesse stehen Standardausgabe (stdout) und Fehlerausgabe (stderr) nun getrennt über ${client.stdout.<name>} und ${client.stderr.<name>} zur Verfügung. Die kombinierte Ausgabe erhalten Sie nach wie vor über ${client.output.<name>}.
  • Über ihr Kontextmenü können nun auch 'Programm starten' und 'Shellkommando ausführen' Knoten ineinander konvertiert werden. Dies ist insbesondere hilfreich zur Umformung von Kommandozeilenargumenten in der Tabelle in eine einzelne Kommandozeile und umgekehrt.
  • Die neue Prozedur qfs.shellutils.exec in der Standardbibliothek qfs.qft ist ein praktisches Hilfsmittel, um in einem Schritt einen System-Befehl auszuführen, sein Ende abzuwarten und die Ausgabe als Rückgabewert zu erhalten.
  • Das eingebettete Selenium WebDriver Framework wurde auf Version 3.141.59 aktualisiert, ChromeDriver auf Version 2.46 (unterstützt Chrome bis Version 73) und GeckoDriver auf Version 0.24.0 (für Firefox 60esr und höher, aktuell bis Version 65).
  • Die Prozedur qfs.utils.email.sendEmail in der Standardbibliothek qfs.qft unterstützt nun SMTP über SSL.
  • Es kann nun der gesamte Text einer PDF Seite mit einem 'Text auslesen' Knoten ermittelt werden.

Beseitigte Bugs:

  • Der Menüeintrag zur Kontext-Hilfe »Was ist das?« funktioniert nun auch wieder für den 'Web-Engine starten' Knoten und dessen Attribute.
  • Web In Firefox konnte ein unerwarteter Dialog zu einer NoAlertPresentException führen. Dieses Problem wurde für Firefox 63 und höher beseitigt, ältere Versionen ignorieren die entsprechende Einstellung im WebDriver.
  • SWT In QF-Test Version 4.4.2 unter Linux funktionierte das Setzen des Eingabefokus für Eclipse/SWT Anwendungen mit GTK2 nicht mehr.
  • Die Methode rc.checkEqual funktioniert nun wieder korrekt beim Vergleich von Zahlen unterschiedlichen Typs wie Integer, Double und BigDecimal.
  • Die Prozedur qfs.utils.xml.compareXMLFiles in der Standardbibliothek qfs.qft konnte Unterschiede in Attributen übersehen.
  • JavaFX Der 'enabled' Check für ein JavaFX MenuItem erkennt nun den 'disabled' Status korrekt.
  • Web Beim Wechseln vom Browser zu einer anderen Anwendung wurde die Hervorhebung für den Checkmodus nicht zuverlässig entfernt.
  • QF-Test setzt nun nicht mehr implizit die Environment-Variable MOZ_NO_REMOTE=1. Dadurch startete Firefox beim Aufruf immer einen neuen Prozess, statt einen neuen Tab in einem existierenden Fenster zu öffnen. Diese Einstellung war ursprünglich für das Testen von Applets eingeführt worden.