Release Notes

QF-Test Version 6.0

Version 6.0.3 - 6. September 2022

Neue Features:

  • Das mit QF-Test ausgelieferte JRE wurde zu Zulu OpenJDK Version 8_345 aktualisiert.
  • SWT QF-Test unterstützt nun auch Tests für Anwendungen, die auf Eclipse/SWT 4.25 bzw. "2022-09" basieren.
  • Web QF-Test unterstützt nun auch Tests mit JxBrowser 7.27
  • Es wurden die Methoden getFirstChild, getNextSibling, getPreviousSibling, getFirstElementChild, getNextElementSibling und getPreviousElementSibling zur Pseudo DOM-API von QF-Test hinzugefügt. Details hierzu finden Sie in Abschnitt 50.11.1.

Beseitigte Bugs:

  • Web Beim Hochladen einer Datei im CDP-Driver Verbindungsmodus wird nun eine TestException geworfen, wenn die angegebene Datei nicht vorhanden ist.
  • Web In seltenen Einzelfällen ging bei der Aufnahme von Mausklicks in Webanwendungen die Information über Unterelemente verloren.
  • Web Vereinzelt wurde das Browserfenster fälschlicherweise aufgrund eines WebDriver Timeouts für einen anderen Frame geschlossen.
  • Web Overlays in Web-Anwendungen, die mit dem Angular-Framework erstellt sind, wurden teilweise nicht korrekt erkannt.
  • SWT Für SWT Anwendungen unter Linux wurde bei der Wiedergabe einer Auswahl für ein ToolItem in einem vertikalen ToolBar ggf. das falsche Item ausgelöst.

Version 6.0.2 - 20. Juli 2022

Neue Features:

  • Das saubere Beenden von laufenden QF-Test Instanzen - insbesondere im Batchmodus - wurde deutlich verbessert. Mit den neuen Kommandozeilenargumenten -allow-shutdown [<Shutdown-ID>] und -shutdown <ID> können nun einzelne Prozesse dediziert über ihre Prozess-ID oder eine vorher vergebene Shutdown-ID angesprochen werden. Die früheren Kommandozeilenargumente -allowkilling und -kill-running-instances funktionieren noch, sind aber abgekündigt.
  • Das Kommandozeilenargument -clearglobals funktioniert nun auch im Calldaemon-Modus (siehe Abschnitt 22.2.2). Hierfür wurde die DaemonRunContext API um zwei neue Methoden erweitert, setGlobals und clearGlobals (siehe Abschnitt 51.2).
  • Web QF-Test unterstützt nun auch Tests mit JxBrowser 7.26.
  • Die schnellere Variante der Prozedur qfs.utils.xml.compareXMLFiles in der Standardbibliothek qfs.qft unterstützt nun ebenfalls das Sortieren.
  • Bei speziellen Merkmalen von Komponenten wie "Tab: some tab" oder "Label: some label" kann für SmartIDs das vorangestellte "Tab:", "Label:" etc. nun weggelassen werden. Details zur Syntax von SmartIDs finden Sie in Abschnitt 5.6.

Beseitigte Bugs:

  • Beim Protokollieren von Abbildern für einzelne Fenster nahm QF-Test fälschlicherweise auch Bilder für eingebettete Fenster von anderen GUI Engines auf.
  • Beim Bearbeiten von Optionen wird nun die doppelte Vergabe von Hot-Keys verhindert.
  • Web Die Pseudo-DOM Methode DomNode.getElementsByTagName gibt nun auch "Slotted Elements" zurück.
  • Web Text aus "Slotted Elements" wurde für das Merkmal von Web-Komponenten nicht berücksichtigt.
  • Web Im Direkt-Download-Modus werden die vorhandenen Dateien nicht mehr überschrieben, sondern bekommen eindeutige Namen.
  • SWT Für SWT unter Windows ist die Wiedergabe von TAB Tastendrücken nun deutlich schneller.

Version 6.0.1 - 9. Juni 2022

Neue Features:

  • SWT QF-Test unterstützt nun auch Tests für Anwendungen, die auf Eclipse/SWT 4.24 bzw. "2022-06" basieren.
  • Mit einer neuen Variablengruppe können Sonderzeichen in SmartIDs bequem geschützt werden. ${quotesmartid:...} kümmert sich um die Zeichen '@', '&' und '%' für Unterelemente ebenso, wie um die speziellen SmartID Zeichen ':', '=', '<' und '>'.

Beseitigte Bugs:

  • Android Die Texteingabe für Android Anwendungen wurde verbessert.
  • Web In Webanwendungen wurde ein GenericClassNameResolver, der für "DOM_NODE" registriert war, nicht korrekt aufgerufen.
  • SWT Bei der Eingabe von Text mittels einzelner Events für SWT Anwendungen unter Ubuntu 22 konnte die Reihenfolge der eingegebenen Zeichen durcheinander geraten. QF-Test spielt diese Events nun mit verbesserter Synchronisation ab.

Änderungen mit möglichen Auswirkungen auf die Testausführung

  • Web Die Unterstützung von Firefox im Verbindungsmodus QF-Driver, der auf Firefox bis Version 43 limitiert war, ist nun abgekündigt und wird in einer der nächsten QF-Test Versionen entfernt. Bitte verwenden Sie stattdessen aktuelle Firefox Versionen mit dem Verbindungsmodus WebDriver.
  • Web Die Unterstützung von Internet Explorer, der nun offiziell eingestellt wird, ist abgekündigt und wird in einer der nächsten QF-Test Versionen entfernt.
  • Web Die Unterstützung von Opera im Verbindungsmodus WebDriver ist nun abgekündigt und wird in einer der nächsten QF-Test Versionen entfernt. Bitte verwenden Sie stattdessen dec Verbindungsmodus CDP-Driver.
  • Web Beim Test von Webanwendungen CDP-Driver oder WebDriver Verbindungsmodus werden Slottable Nodes nun nicht mehr als direkte Kinder des Host Node aufgeführt, sondern als Kinder des zugewiesenen Slot Node. Es ist unwahrscheinlich, dass diese Änderung bestehenden Tests schadet - falls doch, setzen Sie sich bitte mit dem Support von QFS in Verbindung.
  • Swing Die interne Adressierung von Spalten in einer Swing JTable Komponente wurde von model-basiert auf view-basiert umgestellt. Dies hat keine Auswirkung, wenn Spalten mit textuellem Index @... oder %... angesprochen werden oder wenn die Sortierung der Spalten in Model und View übereinstimmt. Falls ein auf numerischen Spaltenindizes &... basierender Test fehlschlägt, können Sie alternativ zur Anpassung der Indizes das alte Verhalten mit folgendem SUT Skript wiederherstellen: rc.setOption(Options.OPT_SWING_TABLE_USE_VIEW_COLUMN, false).
  • Windows-Tests Die interne API der UI-Automation Bibliothek wurde überarbeitet, um die dort verwendeten Klassennamen zu vereinfachen (aus "AutomationWindow" wurde zum Beispiel einfach "Window"). Wenn Sie das uiauto Modul direkt in Ihren Skripten verwenden und dort Klassen direkt referenzieren, müssen Sie ggf. die Klassennamen entsprechend der aktualisierten JavaDoc anpassen.

Version 6.0.0 - 17. Mai 2022

Neue Features:

  • Mit der neuen Android Engine können mit QF-Test nun Android Anwendungen im Emulator oder auf echten Geräten getestet werden. Nähere Informationen finden Sie in Kapitel 15.
  • Auch wenn QF-Test noch mit JRE Version 8 - aktuell auf Stand 8_332 - ausgeliefert wird, kann QF-Test bereits mit Java 17 gestartet werden (siehe Kommandozeilenargument -java <Programm>). Damit erhalten Sie eine gestochen scharfe Darstellung auf skalierten Monitoren sowie die Möglichkeit, Plugins zu nutzen, die eine neuere Java Version benötigen.
  • Es werden nun Tests für Anwendungen unterstützt, die auf Java 19 basieren.
  • Um die Wahrscheinlichkeit zu reduzieren, dass während eines Testlaufs versehentlich sensible Daten als Screenshot aufgenommen werden, erstellt QF-Test nun nur noch Screenshots von relevanten Bildschirmen, auf denen ein Fenster von QF-Test oder einem verbundenen SUT dargestellt werden. Diese Default-Einstellung ist sinnvoll für die persönliche Arbeitsumgebung. Für reine Testsysteme kann es sinnvoll sein, diese über die neue Option Abbilder auf relevante Bildschirme beschränken zu deaktivieren.
  • Der HTML Report wurde gründlich überarbeitet. Neben einem ansprechenderen Design in vielen kleinen Details zur besseren Lesbarkeit werden Bildschirmabbilder und Fehlermeldungen nun beim Anklicken als Overlay dargestellt, inklusive Navigation zwischen mehreren Abbildern.
  • Die Erstellung von Reports kann nun auch über einen neuen Button in der Werkzeugleiste des Protokoll-Fensters ausgelöst werden.
  • In Reports wird nun der Name einer Testsuite, der im Attribut 'Name' des Wurzelknotens angegebenen werden kann, anstelle ihres Dateinamens verwendet. Dies kann im Dialog zur Generierung von Reports eingestellt werden bzw. im Batchmodus über das neue Kommandozeilenargument -report-include-suitename.
  • Zum besseren Verständnis des Laufzeitverhaltens eines Tests kann nun im Protokoll die Anzeige der relativen Dauer von Knoten über einen neuen Button in der Werkzeugleiste oder das »Ansicht« Menü aktiviert werden. Weitere Optionen finden Sie in Abschnitt 7.1.3 sowie bei den Optionen Relative Dauer anzeigen und Anzeigeform für relative Dauer.
  • Nach Aktivieren der neuen Option Bei Warnungen Screenshots erstellen werden Bildschirmabbilder auch für Warnungen im Protokoll erstellt, zusätzlich zu denen für Fehler und Exceptions.
  • Knoten einer Testsuite können nun über das @link Doctag mit externen Ressourcen oder Dateien verknüpft werden. Per Rechts-Klick kann das Ziel dann im Browser oder mit dem Dateityp assoziierten Anwendung geöffnet werden. Weitere Informationen finden Sie in Doctags für Reporting und Dokumentation.
  • Groovy wurde auf Version 4 aktualisiert.
  • Die neuen Parameter warningDelay und errorDelay in der Prozedur qfs.utils.logMemory in der Standardbibliothek qfs.qft steuern eine kurze Verzögerung bei Überschreitung von warningLimit oder errorLimit, gefolgt von einer weiteren Garbage Collection und einer erneuten Prüfung.
  • Die Performanz und das Speicherverhalten der Prozedur qfs.utils.xml.compareXMLFiles wurden verbessert.
  • Web Die Darstellung und "Schwuppdizität" der Hervorhebungen im Check-Modus wurde im CDP-Driver und WebDriver Verbindungsmodus verbessert.
  • Web Die Verarbeitung von WebComponenten mit ShadowDOMs und Slots wurde für den Test von Webanwendungen im CDP-Driver und WebDriver Verbindungsmodus verbessert (Im QF-Driver Modus noch in Entwicklung): Shadow Root Nodes werden jetzt als einziges Kind des entsprechenden Host Node aufgeführt und Slotted Nodes werden als Kinder des zugewiesenen Slot Node repräsentiert.
  • Web Das Abrufen von Text im CDP-Driver Verbindungsmodus ist nun signifikant schneller und die DOM Hierarchie ist konsistent mit den anderen Verbindungsmodi.
  • Web Abbild-Checks in "headless" Browsern sind nun performanter.
  • Web QF-Test unterstützt nun mehrere parallele Downloads in Webtests mit dem CDP-Driver Verbindungsmodus.
  • Web Die neue Prozedur qfs.web.browser.settings.setDirectDownload in der Standardbibliothek qfs.qft erlaubt, Dateien direkt ohne Download-Dialog in das angegebene Verzeichnis zu speichern. Aktuell ist diese Funktion nur für den CDP-Driver Verbindungsmodus verfügbar.
  • Web Der eingebettete Chrome Browser für QF-Driver wurde auf CEF Version 100 aktualisiert.
  • Web QF-Test unterstützt nun auch Tests mit JxBrowser 7.23 und 7.24.
  • Web Die eingebettete cdp4j-Bibliothek wurde auf Version 5.5.0 aktualisiert.
  • Web Der in QF-Test integrierte GeckoDriver wurde auf Version 0.31.0 aktualisiert.
  • Web Die Methode FrameNode.getFrameElement() wurde der QF-Test Pseudo-DOM API hinzugefügt.
  • Web Über den Parameter consoleOutputValue der Prozeduren qfs.web.browser.settings.doStartupSettings und qfs.web.browser.settings.setTerminalLogs in der Standardbibliothek qfs.qft kann nun auch der Typ der Terminalausgaben definiert werden.
  • Windows-Tests Die eingebettete UI-Automation Bibliothek wurde auf Version 0.7.0 aktualisiert.
  • Mac Die unter macOS beim Test mit Safari eventuell auftretenden Hinweis-Dialoge bezüglich der Browser-Automatisierung werden nun von QF-Test automatisch behandelt, so dass sie die Testausführung nicht mehr blockieren.

Preview Features:

Die folgenden Features sind noch nicht vollständig umgesetzt, aber bereits so weit ausgereift, dass sie großen Mehrwert bringen und die freigegebenen Funktionen ohne Sorge um Rückwärtskompatibilität genutzt werden können.

  • SmartIDs ermöglichen eine flexible, einfache Wiedererkennung von Komponenten direkt aus der 'QF-Test ID der Komponente', ohne vorher Information über Komponenten aufzuzeichnen. Detaillierte Informationen hierzu finden Sie in Abschnitt 5.6 und 'Komponente' Knoten versus SmartID.
  • Dank der neuen Integration mit Robot Framework können QF-Test Prozeduren als Robot Framework Keywords verwendet werden.

Beseitigte Bugs:

  • Windows-Tests Die Mini-Installer Dateien für Windows - minisetup.exe und minisetup_admin.exe - können nun wie die gesamte Installation im silent und very-silent Modus ausgeführt werden.
  • Mac QF-Test konnte beim Abspielen harter Tastaturevents unter macOS abstürzen.
  • Bei Verwendung von geteilten Protokollen wurde die Maximalzahl von Bildschirmabbildern bei ausgeschalteter Option Bildschirmabbilder für geteilte Protokolle separat zählen nicht immer eingehalten.
  • Die Prozedur qfs.autowin.acrobat.saveAsText in der Standardbibliothek qfs.qft funktioniert nun auch für Acrobat Reader Versionen 22.1 und höher.
  • Die Ausführung von rc.clearTestRunListeners in einem Server Skript unterbrach bei einem Aufruf im Batchmodus mit dem -verbose [<level>] Kommandozeilenargument die Ausgaben.
  • Web Die Erkennung des Chrome-Fensters für semiharte Klicks wurde verbessert.
  • Web Für aktuelle Opera Versionen wird im WebDriver Verbindungsmodus nun der automatische Download der benötigten ChromeDriver Version unterstützt.
  • Electron Beim Test einer Electron Anwendung im CDP-Driver Verbindungsmodus wurde die Fenstergröße versehentlich beim Start automatisch angepasst.
  • Electron Popups wurden nicht erkannt, wenn eine Electron Anwendung im CDP-Driver Verbindungsmodus getestet wurde.

QF-Test Version 5.4

Version 5.4.3 - 11. März 2022

Neue Features:

  • QF-Test unterstützt nun auch Tests für Anwendungen, die auf Eclipse/SWT 4.23 bzw. "2022-03" basieren.
  • QF-Test unterstützt nun auch Tests mit JxBrowser 7.22.

Beseitigte Bugs:

  • In sehr speziellen Fällen konnte die Wiederausführung eines Knotens, ausgelöst durch das @rerun Doctag, zu falschen Werten auf dem Variablen-Stapel führen.

Version 5.4.2 - 18. Februar 2022

Neue Features:

  • Web QF-Test unterstützt nun Tests mit Opera 84.
  • Web Der Kendo UI und Smart GWT Custom Web Resolver wurden für die aktuelle Version des jeweiligen Frameworks aktualisiert.
  • Web Die eingebettete cdp4j Bibliothek wurde auf Version 5.5.0 aktualisiert.
  • Web Die QF-Test Pseudo-DOM-API wurde um die Methode FrameNode.getFrameElement() ergänzt.
  • Web Bei der Prozedur qfs.web.browser.settings.setTerminalLogs in der Standardbibliothek qfs.qft kann nun über den Parameter consoleOutputValue auch der Typ der Terminal-Logs definiert werden.

Beseitigte Bugs:

  • Web Unter Windows wurden für Chrome und Edge ab Version 98 die Cookies beim Browserstart nicht korrekt gelöscht.
  • Web Beim Umsortieren der Elemente einer Webseite wurde die Sortierung in QF-Test vereinzelt inkorrekt synchronisiert.
  • Die Prozedur qfs.daemon.startRemoteSUT in der Standardbibliothek qfs.qft funktionierte nicht korrekt, wenn der QF-Test Daemon mit einem Keystore zur Absicherung der Kommunikation via TLS gestartet wurde.
  • Swing Bei der Ermittlung des Merkmals einer Swing Komponente hatte durch einen Fehler in den QF-Test Versionen 5.3.4 bis 5.4.1 ein Tooltip eine höhere Gewichtung als ein explizit zugewiesenes Label.

Version 5.4.1 - 20. Januar 2022

Neue Features:

  • Web QF-Test unterstützt nun Tests mit Opera 83.
  • Web Die eingebettete cdp4j Bibliothek wurde auf Version 5.4.1 aktualisiert.

Beseitigte Bugs:

  • Web Im CDP-Driver Verbindungsmodus konnte QF-Test 5.4.0 vereinzelt Elemente auf einer Webseite nicht finden, die nach dem Laden der Seite hinzugefügt wurden.
  • Web Es ist nun möglich, auch dann Console-Log-Ausgaben eines Browsers, der mit dem CDP-Driver Verbindungsmodus gestartet wurde, im QF-Test Terminal auszugeben, wenn diese nicht vom Typ String sind.
  • Web Die Chrome-DevTools können nun abgekoppelt werden, wenn ein Web-Test im CDP-Driver Verbindungsmodus entwickelt wird.
  • Electron In einigen Fällen wurden Dialoge in Electron-Anwendungen im WebDriver Verbindungsmodus nicht korrekt geschlossen.
  • Electron Die Verbindung zu einer Electron-Anwendung konnte im CDP-Driver Verbindungsmodus unter Windows nicht hergestellt werden, falls die Anwendung langsam startete.
  • Mac Der Befehl automac.sendText führte auf neueren macOS-Systemen zu einem Absturz von QF-Test.
  • Mac${qftest:os.version} liefert jetzt für Windows 11 sowie macOS 11 und neuer korrekte Werte.

Änderungen mit möglichen Auswirkungen auf die Testausführung

  • Es wurde ein Fehler im qftest Startskript für Linux beseitigt. Durch diesen wurden beim Verarbeiten von Kommandozeilenargumenten mit einem geschützten $-Ausdruck im Wert eines -variable oder -option Arguments der $-Ausdruck versehentlich expandiert.
  • Swing Für Komponenten in einer Swing JScrollPane, insbesondere JTree und JTable, war die Zuordnung des weiteren Merkmals qfs:label inkonsistent.
  • Web Tests mit dem Browser Microsoft Edge (Legacy) werden nicht mehr unterstützt, da diese Version des Edge Browsers endgültig eingestellt wurde. Dies beeinflusst in keiner Weise die Unterstützung des aktuellen Microsoft Edge Browsers.
  • Web Bei der Ausführung des Knotens 'Warten auf Laden des Dokuments' wird nun besser geprüft, ob ein Dokument tatsächlich neu geladen wurde. Wenn ein bestehender Test bisher die schwache Prüfung voraussetzte, können dort nun Fehler bei der Testausführung auftreten. In solchen Fällen ist es ratsam, die betroffenen 'Warten auf Laden des Dokuments' Knoten zu überprüfen und ggf. zu deaktivieren bzw. zu löschen oder durch 'Warten auf Komponente' Knoten zu ersetzen. Alternativ kann das alte Verhalten durch Aktivieren der Option Internen Ladestatus von Web-Dokumenten beim Rescan zurücksetzen (vor 5.4) wiederhergestellt werden.
  • Web Bei Webanwendungen werden nun automatisch die Attribute "aria-checked" und "aria-selected" für 'Check Boolean' Knoten vom Typ selected bzw. checked berücksichtigt.

Version 5.4.0 - 15. Dezember 2021

Neue Features:

  • Es werden nun Tests für Anwendungen unterstützt, die auf Java 18 basieren.
  • Electron Electron-Anwendungen können nun über den CDP-Driver Verbindungsmodus getestet werden, was wesentlich effektiver ist und keine Einbindung des problematischen Moduls @electron/remote in die zu testende Electron Anwendung erfordert.
  • Im Dialog für die Einstellungen von QF-Test wird nun eine Suchfunktion angeboten.
  • Man kann nun Abbilder von und nach QF-Test kopieren, insbesondere bei 'Check Abbild' Knoten und Bildschirmabbildern im Protokoll.
  • 'Mausevent' Knoten mit einem Wert von 4 im Attribut 'Modifiers', entsprechend einem Klick mit der rechten Maustaste, werden im Baum nun als "Rechtsklick" dargestellt.
  • Web Der eingebettete Chrome Browser für QF-Driver wurde auf CEF Version 95 aktualisiert.
  • Groovy wurde auf Version 3.0.9 aktualisiert.
  • Die JUnit Bibliothek wurde auf Version 5.8.1 aktualisiert.
  • SWT QF-Test unterstützt nun auch Tests für Anwendungen, die auf Eclipse/SWT 4.22 bzw. "2021-12" basieren.
  • Web QF-Test unterstützt nun Tests mit Opera 80, 81 und 82.
  • Web QF-Test unterstützt nun auch Tests mit JxBrowser 7.20 und 7.21.
  • Web Für eine Webanwendung kann das Attribut 'Name des Check-Typs' eines 'Check Boolean' Knotens nun auch den Wert "attribute:<name>" haben, um den Wahrheitswert des Attributs <name> im Zielknoten zu prüfen.
  • Das neue Doctag @outputFilter kann in Knoten zum Start eines Clients verwendet werden, um unerwünschte Ausgaben aus dem QF-Test Terminal zu filtern. Weitere Informationen hierzu finden Sie in Abschnitt 58.3.
  • Wenn das Attribut 'Defaultwert' in einem 'Variable setzen' Knoten die QF-Test ID einer Komponente in der Form ${id:...} enthält, kann nun über einen Rechts-Klick und entsprechende Auswahl im Kontextmenü zur Zielkomponente gesprungen oder diese im SUT hervorgehoben werden.

Beseitigte Bugs:

  • Die Suche nach ungenutzten aufrufbaren Knoten berücksichtigte nicht alle Referenzen und konnte somit Knoten melden, die eigentlich noch benötigt wurden.
  • QF-Test versucht nun zu vermeiden, dass Nicht-Daemon-Threads im SUT erzeugt werden - einschließlich der vom RMI Modul generierten Threads. Solche Threads konnten verhindern, dass ein Prozess nach Schließen des letzten Fensters im SUT sauber terminiert.
  • Performanz und Speicherverbrauch wurden an diversen Stellen verbessert.
  • Swing Der Titel eines Swing JPanel mit einer TitledBorder wird nun korrekt als Merkmal ermittelt.
  • Swing Die Reihenfolge der Komponenten in einer Swing JSplitPane konnte von der Reihenfolge der Erzeugung oder des Austauschens dieser Komponenten abhängen. QF-Test nimmt nun unabhängig davon immer die Reihenfolge links->rechts bzw. oben->unten.
  • Web QF-Test unterstützt nun auch den automatischen Download von ChromeDriver für die Google Chrome Varianten "Dev" und "Canary".
  • Web Nach einer Frame-Navigation im CDP-Driver Modus zeichnete QF-Test Events vereinzelt nicht korrekt auf.
  • Web Es wurde eine Exception behoben, die zu Problemen bei der Initialisierung eines Dokuments im CDP-Driver Modus führen konnte.
  • Web Das "label"-Attribute eines OPTION Elements wird nun bei der Ermittlung von dessen Namen berücksichtigt.
  • Web Wenn ein Browser-Fenster im CDP-Verbindungsmodus abstürzt wird nun automatisch ein Fehler geloggt und das Fenster geschlossen.
  • Web Die Behandlung von Unload-Dialogen bei Web-Tests im CDP-Driver Verbindungsmodus wurde verbessert.
  • Web Bei der Ausführung von Web-Tests mit einem headless Browser im CDP-Driver Verbindungsmodus versucht QF-Test nun nicht mehr, für Datei Up- oder Download temporär einen Swing Dialog anzuzeigen. Damit sollten reine headless Web-Tests mit CDP-Driver im Batchmodus nun auch in einem Container komplett ohne X-Server lauffähig sein.
  • Web Im CDP-Driver Verbindungsmodus wurde die automatische Synchronisierung mit Animationen in Webanwendungen wurde verbessert.
  • Web Konsolenausgaben von Firefox im Webdriver Verbindungsmodus wurden in früheren QF-Test Versionen auf die Standardausgabe des Prozesses umgeleitet, um diese auf JavaScript Fehler prüfen zu können. Aufgrund der potenziell hohen CPU und Speicherbelastung wurde dieses Verhalten deaktiviert. Über den Parameter consoleOutputValue mit Wert 1 im Aufruf der Prozedur qfs.web.browser.settings.doStartupSettings in der Standardbibliothek qfs.qft kann es wiederhergestellt werden.

QF-Test Version 5.3

Version 5.3.4 - 30. September 2021

Neue Features:

  • Der in QF-Test integrierte GeckoDriver wurde auf Version 0.30.0 aktualisiert.

Beseitigte Bugs:

  • Es wurde ein Speicherleck in QF-Test beseitigt, welches mit Version 5.3.3 hereingekommen war.
  • Die Prozedur qfs.autowin.acrobat.saveAsText in der Standardbibliothek qfs.qft funktioniert nun auch für Acrobat Reader Versionen 21.6 und höher.

Version 5.3.3 - 14. September 2021

Neue Features:

  • SWT QF-Test unterstützt nun auch Tests für Anwendungen, die auf Eclipse/SWT 4.21 bzw. "2021-09" basieren.
  • Web QF-Test unterstützt nun Tests mit Opera 78 und 79.
  • Web QF-Test unterstützt nun auch Tests mit JxBrowser 7.17, 7.18 und 7.19.
  • Web Die integrierte cdp4j Bibliothek wurde auf Version 5.4.0 aktualisiert.

Beseitigte Bugs:

  • Der Dialog zum Bearbeiten der Details eines Knoten wird nun immer korrekt im Bereich der sichtbaren Bildschirme angezeigt, auch wenn z.B. ein vorher angeschlossener Monitor entfernt oder auf eine RDP-Session gewechselt wurde.

Version 5.3.2 - 21. Juli 2021

Beseitigte Bugs:

  • Web Einige Webseiten, die spezielle benutzerdefinierte HTML-Elemente enthalten, konnten nicht im CDP-Driver Verbindungsmodus getestet werden.
  • Web Im CDP-Driver Verbindungsmodus wurden in seltenen Fällen Leerzeichen im Text nicht korrekt eingelesen.
  • Web Im CDP-Driver Verbindungsmodus wird das keyCode Feld von KeyEvents, die für Texteingaben generiert werden, nun korrekt gesetzt.
  • Web Im CDP-Driver Verbindungsmodus wurde die Position von Elementen in verschachtelten IFRAMEs fehlerhaft berechnet.
  • Web Das Attribut 'Name des Browser-Fensters' im Knoten 'Warten auf Laden des Dokuments' wurde ignoriert.

Version 5.3.1 - 15. Juni 2021

Neue Features:

  • Es werden nun Tests für Anwendungen unterstützt, die auf Java 17 basieren.
  • SWT QF-Test unterstützt nun auch Tests für Anwendungen, die auf Eclipse/SWT 4.20 bzw. "2021-06" basieren.
  • Die Performanz im CDP-Verbindungsmodus bei dynamischen Änderungen des Webseiten-Inhaltes wurde verbessert.
  • QF-Test unterstützt nun auch Tests mit JxBrowser 7.16.
  • Electron QF-Test unterstützt nun auch Electron-Anwendungen mit Electron Version 14 oder neuer, wenn in die App das @electron/remote Modul eingebunden wurde.
  • QF-Test unterstützt nun auch Tests mit Opera 77.

Beseitigte Bugs:

  • Web Bei Webanwendungen wurde die Gültigkeit von Texteingaben via einzelner Events durch zusätzliche explizit definierte Keycodes verbessert.

Änderungen mit möglichen Auswirkungen auf die Testausführung

  • Jython Probleme mit Zeichenkodierungen wurden reduziert: Es ist nun möglich, Jython Literale (wörtliche Zeichenketten wie "abc") als 16-Bit Unicode-Strings zu behandeln, entsprechend der Darstellung in Java und damit QF-Test. Aus Kompatibilitätsgründen bleibt die neue Option Literale (wörtliche Zeichenketten) in Jython sind Unicode (16-Bit wie in Java) standardmäßig deaktiviert, falls QF-Test eine bereits bestehende ältere Systemkonfiguration vorfindet.

    In Abschnitt 11.3.4 finden Sie detaillierte Informationen darüber, warum Sie diese Option aktivieren sollten und wie Sie mit eventuell daraus resultierenden Problemen umgehen. Die Chancen stehen gut, dass Ihre Jython Skripte einfach funktionieren und der Umgang mit Zeichenketten deutlich sauberer wird. Falls nicht, können Sie die Option wieder zurücksetzen oder die nicht kompatiblen Stellen beheben. Wir mussten dies in unseren über 1600 Testsuiten, von denen manche über 20 Jahre alt sind, nur in einer handvoll Fälle tun. Der Abschnitt Behandlung von Problemen mit Jython und Zeichenkodierungen beschreibt die gängigen Problemfälle und natürlich ist unser Support immer für Sie da.

  • Das Standardverzeichnis für das Profil von Firefox heißt bei der Ausführung im WebDriver Verbindungsmodus nun nicht mehr mozProfile sondern firefoxProfile und es wird nun direkt verwendet statt als temporäre Kopie. Dieses Verhalten ist konsistent zur Testausführung mit QF-Driver, hat aber den Nebeneffekt, dass Einstellungen nun von einem Test zum nächsten erhalten bleiben und bei Bedarf beim nächsten Browser-Start passend überschrieben werden müssen. Um das ursprüngliche Verhalten wieder herzustellen, muss die Option OPT_WEBDRIVER_COPY_MOZPROFILE vor dem Start des Browsers auf true gesetzt werden.
  • Die Prozeduren im Package qfs.utils.ssh der Standardbibliothek qfs.qft und das zu Grunde liegende Jython Modul ssh wurden aktualisiert. Sie verwenden nun standardmäßig RSA Public Key Authentication mit der privaten Schlüsseldatei /.ssh/id_rsa statt des veralteten DSA, das von den meisten aktuellen ssh Servern nicht mehr unterstützt wird.
  • Die Option Kompakte Protokolle erstellen ist im interaktiven Modus nun standardmäßig deaktiviert. Bestehende Systemkonfigurationen sind davon nicht betroffen und im Batchmodus hat die Option keine Wirkung. Dort wird Kompaktifizierung über das Kommandozeilenargument -compact gesteuert.

Version 5.3.0 - 20. Mai 2021

Neue Features:

  • Web Der neue Browser-Verbindungsmodus CDP-Driver ergänzt QF-Driver und WebDriver zur Ansteuerung von Chromium basierten Browsern über das Chrome DevTools Protokoll. Durch das direkte Ansprechen des Browsers ohne Umweg über das WebDriver Protokoll sind Geschwindigkeit, Stabilität und Funktionsumfang vergleichbar mit QF-Driver (und das nach dessen Performance-Optimierung, s.u.). Im Gegensatz zu QF-Driver, der auf Chrome unter Windows beschränkt ist, funktioniert der CDP-Driver mit Google Chrome, Microsoft Edge und Opera unter Window, Linux und macOS, was die Web-Testautomatisierung mit QF-Test auf eine neue Ebene hebt.
  • Web Die Performance von Web-Tests mit QF-Driver für Chrome wurde signifikant verbessert. Die beobachtete Erhöhung der Geschwindigkeit liegt zwischen 10% und über 500%.
  • Die Oberfläche von QF-Test ist nun moderner, klarer und aufgeräumter, mit einem einheitlich flachen Look, weniger Linien und wunderschönen neuen Icons, welche die bekannte Bildsprache beibehalten und damit sofort wiedererkennbar bleiben. Auch die HTML Versionen des Handbuchs und des Tutorials sowie der Reports und Test-Dokumentation haben eine Auffrischung erhalten.
  • Die Verwendung internationaler Zeichensätze in Jython Skripten ist nun viel einfacher. Wenn die neue Option Literale (wörtliche Zeichenketten) in Jython sind Unicode (16-Bit wie in Java) aktiviert ist, werden Literale (wörtlich definierte String-Konstanten wie "abc") in Jython Skripten als 16-Bit Unicode-Strings interpretiert und sind damit äquivalent zu Strings in Java und den anderen Skriptsprachen von QF-Test. Detaillierte Informationen hierzu finden Sie in Abschnitt 11.3.4.
  • Web Fehler in der Browser-Konsole werden nun besser erkannt und, je nach Einstellung der Option Behandlung von Fehlern in einer Webanwendung, in das QF-Test Protokoll übernommen. Zudem kann über die neue Prozedur qfs.web.browser.settings.setTerminalLogs in der Standardbibliothek qfs.qft eingestellt werden, ob und wie Meldungen der Browser-Konsole im QF-Test Terminal angezeigt werden sollen.
  • Web Der eingebettete Chrome Browser für QF-Driver wurde auf CEF Version 89 aktualisiert.
  • Web Der in QF-Test integrierte GeckoDriver wurde auf Version 0.29.1 aktualisiert.
  • Web QF-Test unterstützt nun auch Tests mit JxBrowser 7.14 und 7.15.
  • Web QF-Test unterstützt nun Tests mit Opera 76.
  • Das mit QF-Test ausgelieferte JRE wurde zu Zulu OpenJDK Version 8_292 aktualisiert.
  • Der Schnellstart-Assistent hat nun seinen eigenen Toolbar-Button. Dieser kann nun - wie jeder andere nicht benötigte Toolbar-Button - per Rechts-Klick aus der Werkzeugleiste ausgeblendet werden.
  • Der 'Warten auf Verschwinden' Knoten hat nun einen eigenen Eintrag im »Einfügen« Menü und seine Anwendung auf Unterelemente wurde vereinfacht: Die Ausführung ist erfolgreich, sobald entweder die Parent-Komponente des Unterelements nicht (mehr) vorhanden ist, oder das Unterelement selbst.
  • Bei einem Testlauf mit dem Kommandozeilenargument -verbose [<level>] werden QF-Test Variablen in den Namen von Knoten nun auch für die Ausgabe in der Konsole expandiert.
  • Die Voreinstellung für den verfügbaren Arbeitsspeicher für QF-Test wurde auf 1024 MB hochgesetzt. Die Konfiguration bestehender QF-Test Installationen ist davon nicht betroffen.
  • Swing Unterelemente von Swing JComboBox Komponenten können nun relativ zur JComboBox adressiert werden, ohne dass die Popup-Liste dafür benötigt wird.
  • Linux Die Fähigkeit, Fenster des SUT bei Bedarf in den Vordergrund zu bringen und den Eingabefokus zu setzen ist für eine stabile Testautomatisierung sehr wichtig. Unter Linux verwendet QF-Test nun eine aktualisierte, zuverlässigere Methode, Fenster unabhängig von den Desktop-Einstellungen nach vorne zu bringen, sofern die Option Beim Nach-vorne-bringen Fenster in den Vordergrund zwingen nicht deaktiviert ist.
  • Meldungen für Exceptions im Protokoll oder in Fehlerdialogen werden nun an Wortgrenzen umgebrochen. Diese Darstellung kann über die Option Zeilen in Meldungen für Exceptions umbrechen deaktiviert werden.

Beseitigte Bugs:

  • Das Einhängen eines Resolvers mit der generischen Methode resovlers.addResolver() funktionierte nicht in SUT Skripten mit der Sprache JavaScript.
  • Web Die Zoomstufe des Browsers wird nun beim Löschen des Browser-Cache auf 100% zurückgesetzt.
  • Die Prozedur qfs.swing.startup.startWebstartSUT sorgt nun dafür, dass der jnlp Parameter für die Verwendung auf der Kommandozeile von Linux Systemen korrekt geschützt wird, um Effekten durch eventuell enthaltene Sonderzeichen vorzubeugen.
  • Windows-Tests Das weitere Merkmal qfs:label wurde für Elemente in einem TabPanel einer nativen WPF Anwendung mit nicht korrekt ermittelt.
  • Web Seit QF-Test Version 5.2.2 wurden in vereinzelten Fällen Elemente einer Webseite fälschlicherweise als unsichtbar eingestuft.
  • Mac QF-Test funktioniert nun auch wieder unter macOS Versionen älter als 10.14.
  • Die Suche nach dem weiteren Merkmal qfs:label ist bei einem Label oberhalb der Zielkomponente nun etwas toleranter bezüglich der horizontalen Ausrichtung.
  • Swing Die schnelle Wiedergabe von mehreren Mausklicks auf dieselbe Stelle einer Webswing Anwendung konnte bei Umleitung über den Browser zu ungewollten Doppelklicks führen.

QF-Test Version 5.2

Version 5.2.3 - 9. März 2021

Neue Features:

  • SWT QF-Test unterstützt nun auch Tests für Anwendungen, die auf Eclipse/SWT 4.19 bzw. "2021-03" basieren.

Beseitigte Bugs:

  • In einzelnen Fällen konnten unglücklich platzierte Kommentar Knoten unerwünschte Seiteneffekte bei der Testausführung haben, z.B. die Ausführung eines 'Vorbereitung' oder 'Aufräumen' Knotens nur für den Kommentar.
  • Das Timing beim Stoppen von Prozessen am Ende der Batchausführung wurde verbessert.
  • Web Im WebDriver Verbindungsmodus wurden Veränderungen auf der Website eventuell übersehen, wenn die Seite zu viele Elemente enthielt.

Version 5.2.2 - 12. Februar 2021

Neue Features:

  • Es werden nun Tests für Anwendungen unterstützt, die auf Java 16 basieren.
  • Web QF-Test unterstützt nun Tests mit Opera 74.
  • Web Der in QF-Test integrierte GeckoDriver wurde auf Version 0.29.0 aktualisiert.
  • Über die Tastenkürzel [Strg-/] bzw. [Strg-7] kann ein neuer Kommentarknoten im Baum der Testsuite eingefügt werden.

Beseitigte Bugs:

  • Web Die Geschwindigkeit der Ausführung von Web-Tests wurde an einigen Stellen verbessert, insbesondere für Firefox unter Linux mit WebDriver.
  • Web In sehr seltenen Fällen wurde Chrome geschlossen, wenn während einer JavaScript-Ausführung ein Frame neu geladen wurde.
  • Web Das verzögerte Anhängen von Shadow DOM Elementen wird nun korrekt erkannt.
  • Swing In einzelnen Sonderfällen konnten bei der verbesserten Event-Synchronisation für Swing Events übersehen werden, was zu langsamerer Testausführung führte.
  • Wenn ein 'Testfall' mit gesetztem Attribut 'Fehlschlagen erwartet wenn...' nicht fehlschlägt, sollte das als Fehler behandelt werden. Dieser Fehler wurde fälschlicherweise seinerseits als erwarteter Fehler angezeigt.
  • Die Reihenfolge von Parametern wird nun auch automatisch angepasst, wenn die Zielprozedur eines 'Prozeduraufruf' Knotens über den Auswahldialog geändert wird.

Version 5.2.1 - 3. Dezember 2020

Neue Features:

  • SWT QF-Test unterstützt nun auch Tests für Anwendungen, die auf Eclipse/SWT 4.18 bzw. "2020-12" basieren.
  • QF-Test unterstützt nun auch Tests mit JxBrowser 7.12.

Beseitigte Bugs:

  • Aufgrund von falschen Zugriffsrechten funktionierte Jython unter Linux nicht, wenn QF-Test von verschiedenen Anwendern installiert und gestartet wurde.
  • Das mit QF-Test ausgelieferte JRE wurde zurück zu Zulu OpenJDK gewechselt. Die Version bleibt bei 8_275.
  • Manchmal führte die Anzeige eines JavaScript-Dialogs zu einem Deadlock.
  • Mehrere Details der Webswing Integration wurden verbessert, darunter das korrekte Filtern von KeyEvents, Fokuswechsel für eingebettete JavaFX Komponenten und eine bessere Trennung der Client-Prozess in den Demo-Testsuiten.
  • Die Daemon-Verbindung wurde teilweise nicht aufgebaut, wenn auf Client- und Serverseite unterschiedliche Java Versionen verwendet wurden.

Änderungen mit möglichen Auswirkungen auf die Testausführung

  • Das Testen von Anwendungen, die mit Java 7 ausgeführt werden, wird nicht weiter unterstützt.
  • Windows-Tests Viele Prozeduren im Package qfs.qft.autowin in der Standardbibliothek wurden mit Hinblick auf die wesentlich besser geeignete Windows-Engine abgekündigt.
  • Durch das Update des JRE von QF-Test werden Kurven und graphische Element im PDF Client mit minimal anderem Anti-Aliasing dargestellt. Dis kann zu Fehlern bei 'Check Abbild' Knoten führen. Nachdem solche Probleme auch bei zukünftigen Updates des internen JRE nicht auszuschließen sind, setzen Sie für solche Checks am besten das Attribut 'Algorithmus zum Bildvergleich' auf "algorithm=similarity;expected=0.98".

Version 5.2.0 - 10. November 2020

Neue Features:

  • QF-Test unterstützt nun das integrierte Testen von Swing und JavaFX Anwendungen, die mit Hilfe der Technologien Webswing oder JPro im Browser dargestellt werden. Erklärungen zum Konzept finden Sie in Kapitel 17 und eine Webswing Demo-Testsuite über den Menüeintrag »Hilfe«-»Beispiel-Testsuiten erkunden...«, Eintrag "Webswing SwingSet Suite".
  • Mac QF-Test wird nun durch Apple beglaubigt und startet somit auf modernen macOS Systemen ohne Warnmeldung.
  • Web QF-Test unterstützt nun auch Tests mit dem Microsoft Edge Browser unter Linux.
  • Das mit QF-Test ausgelieferte JRE wurde zu Liberica OpenJDK Version 8_275 aktualisiert.
  • Web Der eingebettete Chrome Browser für QF-Driver wurde auf CEF Version 85 aktualisiert.
  • Groovy wurde auf Version 3.0.6 aktualisiert.
  • Jython wurde auf Version 2.7.2 aktualisiert.
  • Web QF-Test unterstützt nun auch Tests mit JxBrowser 7.11
  • Web Der eingebettete Geckodriver wurde auf Version 0.28.0 aktualisiert.
  • Web QF-Test unterstützt nun Tests mit Opera 72.
  • Web Für den Mobile Emulation Mode wurden die Spezifikationen vieler neuer Geräte hinzugefügt.
  • Die JUnit Bibliothek wurde auf Version 5.7.0 aktualisiert.
  • Web Auf Windows Systemen mit skalierter Darstellung startet QF-Test einen Browser im QF-Driver Modus nun mit aktiviertem Kompatibilitätsmodus, so dass die skalierte Darstellung transparent durch Windows erfolgt und Tests mit Ausnahme von Abbild Checks analog zum unskalierten Modus funktionieren.
  • Beim Start von QF-Test können nun Optionen über das Kommandozeilenargument -option <Name>=<Wert> gesetzt werden.
  • Kommandozeilenargumente für QF-Test können nun an beliebiger Stelle "." und "-" Zeichen enthalten. Zudem können Groß- oder Kleinbuchstaben nach Belieben verwendet werden.
  • Beim Testen von Java Anwendungen kann QF-Test nun Aufrufe abfangen, die ein natives Browserfenster öffnen, um stattdessen einen von QF-Test gesteuerten Browser mit der entsprechenden URL zu starten. Beispiele finden Sie in den Demo-Testsuiten "CarConfig Testprojekt" und "CarConfig JavaFX Testprojekt", zu erreichen über das Menü »Hilfe«-»Beispiel-Testsuiten erkunden...«.
  • Die neue Prozedur qfs.utils.waitForClientOutput in der Standardbibliothek qfs.qft unterstützt bei der Synchronisation mit Terminal-Ausgaben im SUT.
  • Viele neue Knotenkonvertierungen sind jetzt möglich.
  • Der 'Server HTTP Request' Knoten unterstützt nun auch die PATCH Methode.
  • Mit Hilfe der beiden neuen Prozeduren qfs.utils.sendKey und qfs.utils.sendText in der Standardbibliothek qfs.qft kann Text im aktuell fokussierten Element des aktiven Fensters eingegeben werden.
  • Mit Hilfe der neuen Option Hinweis anzeigen, wenn keine Events aufgenommen wurden kann der "Es wurden keine Events aufgenommen" Dialog unterdrückt werden.
  • Beim Zusammenführen von Protokollen im Batchmodus kann nun das Kommandozeilenargument -mergelogs-masterlog [<Datei>] mit dem Wert "append" für das Argument -mergelogs-mode [<Modus>] kombiniert werden. Die angehängten Protokolle werden dabei als externe Protokolle gespeichert, was den Bedarf an Arbeitsspeicher sowohl für das Zusammenführen als auch das anschließende Öffnen des Protokolls minimiert.
  • Analog zu Jython können in Skript-Knoten mit Groovy und JavaScript nun wichtige Exceptions auch ohne expliziten Import verwendet werden.
  • Beim Anpassen der Parameter von aufrufenden Knoten über das Menü »Operationen«-»Parameter von Referenzen anpassen« kann nun explizit festgelegt werden, ob fehlende Parameter ergänzt, überzählige Parameter entfernt und/oder die Reihenfolge der Parameter angepasst werden soll.

Beseitigte Bugs:

  • Wenn während eines automatischen Reruns das Protokoll geöffnet wurde, konnte es zu einer Exception kommen.
  • Verschlüsselte Verbindungen zum QF-Test Daemon können nun auch über die externe Daemon-API hergestellt werden.
  • Beim Erstellen von Reports wurden Miniaturbilder selbst dann erzeugt, wenn -report-thumbnails nicht angegeben war.
  • Der 'Unit Test' Knoten unterstützt nun in Jython-Skripten den Befehl self.assertEqual korrekt.
  • Texteingaben in Swing und JavaFX Komponenten wurden bei Erkennung eines in Java eingebetteten Browsers verlangsamt.
  • Swing Die Synchronisation von Events unter starker Last bei Swing basierten Anwendungen wurde verbessert.
  • Swing Zeilenumbrüche werden bei der Texteingabe mit Einzelevents für eine Swing JTextArea jetzt korrekt wiedergegeben.
  • Windows-Tests Bei Windows Anwendungen wurden Komponenten unter Umständen nicht sichtbar gescrollt, um einen harten Mausklick oder einen Abbildcheck durchzuführen.
  • Web Bei einem Browser im WebDriver Modus konnte es nach einem fehlgeschlagenen Frame-Fokuswechsel zu einer StackOverflowException kommen.
  • Web In einigen Fällen wurde der MSEdgeDriver nicht korrekt heruntergeladen.
  • Web Checks auf Elementen innerhalb eines Shadow DOMs konnten nicht aufgezeichnet werden.
  • Web Bedingte (unsichtbare) Trennstriche werden nun implizit ignoriert.
  • Electron In einigen Fällen wurden Dialoge in Electron-Anwendungen leer dargestellt.
  • JavaFX Die Sichtbarkeit von JavaFX Komponenten wurde gegebenenfalls nicht korrekt bestimmt, wenn diese in eine Swing Komponente eingebettet waren.
  • SWT Bei SWT Version 4.17 unter Windows wurden Highlight-Rechtecke für Menüs nicht richtig zurückgesetzt.

QF-Test Version 5.1

Version 5.1.2 - 15. September 2020

Neue Features:

  • SWT QF-Test unterstützt nun auch Tests für Anwendungen, die auf Eclipse/SWT 4.17 bzw. "2020-09" basieren.

Beseitigte Bugs:

  • In seltenen Fällen konnte QF-Test bei knappem Arbeitsspeicher während der Bildkomprimierung abstürzen.

Version 5.1.1 - 26. August 2020

Neue Features:

  • Web QF-Test unterstützt nun auch Tests mit Opera 70.
  • Web Der eingebettete GeckoDriver wurde auf Version 0.27.0 aktualisiert.
  • Web Für WebDriver-basierte Tests mit Chrome/Chromium wird die Seitenisolierung nun automatisch deaktiviert.
  • Web QF-Test unterstützt nun auch Tests mit JxBrowser 7.10.
  • Ein Link zur JavaScript Dokumentation wurde im Hilfe-Menü eingefügt.

Beseitigte Bugs:

  • Der 'Unit Test' Knoten sucht auf dem Classpath nun auch nach JUnit 5 (Jupiter) Tests.
  • Electron In einigen Fällen wurden Klicks auf native Menüs in Electron-Anwendungen nicht korrekt aufgenommen.
  • Web Der Cache von Chromium-basierten Browsern wurde teilweise nicht korrekt gelöscht.
  • Die Option Attribut 'Lokale Variable' standardmäßig aktivieren wird nun auch beim Einfügen von kopierten 'Prozedur' Knoten als 'Prozeduraufruf', generell bei Knotenkonvertierungen sowie bei der Aufnahme von Checks beachtet.
  • Web Wenn Embedded-Browser-Container (z.B. JxBrowser) gleichzeitig erstellt und gelöscht wurden, konnte es zu einem Deadlock kommen.
  • 'Kommentar' Knoten in der Procbuilder-Konfigurationsdatei konnten die Aufnahme von Prozeduren behindern.
  • Mac Unter macOS werden JVM-Optionen (die mit "-J-" beginnen) nun korrekt ausgewertet.
  • Windows-Tests Die Texteingabe hat bei Windows-Anwendungen unter Umständen nicht richtig funktioniert, wenn die AltGr-Taste beteiligt war.
  • Web Beim Test in einem fensterlosen Browser wurden die unsichtbaren Dialogfenster teilweise nicht ordnungsgemäß geschlossen.
  • Web Bei Tests mit dem SWTBrowser konnte eine ClassNotFoundException auftreten.
  • Bei der Erstellung von Prozeduren mittels Procbuilder unter Verwendung von FORCECREATION wurden die Trennpunkte der Packagestruktur in Unterstriche umgewandelt.
  • Bei der Generierung von Prozeduren mittels Procbuilder ist es nun auch möglich, Werte aus den 'Weiteren Merkmalen' von übergeordneten Knoten als Fallback zu verwenden.

Änderungen mit möglichen Auswirkungen auf die Testausführung

  • Durch das Update des JRE von QF-Test werden Kurven und graphische Element im PDF Client mit minimal anderem Anti-Aliasing dargestellt. Dis kann zu Fehlern bei 'Check Abbild' Knoten führen. Nachdem solche Probleme auch bei zukünftigen Updates des internen JRE nicht auszuschließen sind, setzen Sie für solche Checks am besten das Attribut 'Algorithmus zum Bildvergleich' auf "algorithm=similarity;expected=0.98".

    Das JRE Update kann außerdem zu Problemen bei der Kommunikation zwischen QF-Test und dem QF-Test Lizenzserver führen, falls der Lizenzserver mit einer sehr alten Java Version betrieben wird, die mit den geforderten Schlüssellängen für SSL in aktuellen Java Versionen nicht zurecht kommt. Am besten aktualisieren Sie in diesem Fall den QF-Test Lizenzserver auf die aktuelle QF-Test Version und nutzen das mitgelieferte JRE.

  • Die Bibliothek jniwrapper wird standardmäßig nicht mehr geladen, da unsere alte jniwrapper Version QF-Test unter neueren JDKs zum Absturz bringt. Module mit nativen Abhängigkeiten wie autowin wurden umgeschrieben, so dass Sie nicht länger darauf aufbauen. Zudem wurden alle Verweise auf jniwrapper aus der Standardbibliothek qfs.qft entfernt.

    Falls Sie noch Skripte in Ihren Testsuiten haben, die jniwrapper nutzen, sollten Sie versuchen, diese so umzuschreiben, dass die Abhängigkeit nicht mehr besteht. Bitte wenden Sie sich an unseren Support, falls Sie dafür Hilfe benötigen.

    Als Übergangslösung können Sie solche Skripte (mit alten JDKs bei denen jniwrapper nicht abstürzt) wie folgt wiederbeleben:

    • Kopieren Sie die Dateien aus misc/jniwrapper im QF-Test Installationsverzeichnis nach qftest im QF-Test Plugin-Verzeichnis. Sie finden diese Verzeichnisse über den »Hilfe«-»Info« Dialog im Reiter 'Systeminfo' als dir.version und dir.plugin.
    • Fügen Sie entweder ein Jython Server Skript in Ihre Startsequenz ein mit
      from com.jniwrapper import DefaultLibraryLoader
      from java.io import File
      DefaultLibraryLoader.getInstance().addPath \
        (File(rc.lookup("qftest", "dir.plugin") + "/qftest"))
      oder die folgende Groovy Variante
      import com.jniwrapper.DefaultLibraryLoader
      DefaultLibraryLoader.getInstance().addPath
        (new File(rc.lookup("qftest", "dir.plugin") +
             "/qftest"))
  • Der ChromeDriver für alte Chrome Versionen (älter als 72) wird nicht mehr mit QF-Test ausgeliefert.
  • Das Testen von Anwendungen mit Java 7 wird mit dieser QF-Test Version noch unterstützt. Allerdings ist die weitere Unterstützung für Java 7 hiermit abgekündigt und wird mit QF-Test Version 5.2 eingestellt.

Version 5.1.0 - 8. Juli 2020

Video Video: QF-Test 5.1.0.

Neue Features:

  • Es werden nun Tests für Anwendungen unterstützt, die auf Java 15 basieren.
  • Das mit QF-Test ausgelieferte JRE wurde zu Zulu OpenJDK Version 8_252 aktualisiert.
  • Web Die Aufnahme und Wiedergabe von Tests für eingebettete Browser wurde substantiell verbessert.
  • Es wird nun JxBrowser Version 7, eingebettet in Swing, JavaFX oder Eclipse/SWT Anwendungen unterstützt.
  • Electron Bei Electron Anwendungen werden nun auch native Dialoge unterstützt.
  • Web QF-Test unterstützt nun Tests mit Opera 69.
  • Web Die Unterstützung für das Webframework Qooxdoo wurde für Qooxdoo Version 6 aktualisiert.
  • HTML Reports können nun mit Hilfe einer JavaScript Datei namens user.js angepasst werden. Weitere Informationen hierzu finden Sie in Abschnitt 21.1.4.
  • Das automac Modul wurde um Methoden zum Abspielen von Tastatur- und Mausevents erweitert. Weitere Informationen finden Sie in Kapitel 49.
  • Dem Wurzelknoten einer Testsuite kann über das Attribut 'Name' nun ebenfalls ein Name zugewiesen werden, der in der Baumansicht dargestellt wird.
  • Die neue Option Attribut 'Lokale Variable' standardmäßig aktivieren legt fest, ob das Attibut 'Lokale Variable' in neu erstellten Knoten aktiv vorbelegt wird.
  • Die Prozedur qfs.utils.dragAndDrop in der Standardbibliothek qfs.qft hat einen neuen optionalen Parameter eventDelay zur Steuerung der Wiedergabegeschwindigkeit.
  • Es ist nun möglich einen 'CSV Datei' Knoten in einen 'Excel Datei' Knoten zu konvertieren und umgekehrt.
  • Testsuite-Reiter können nun über die Tastenkombinationen [Umschalt-Strg-Bild hoch] und [Umschalt-Strg-Bild runter] nach links oder rechts bewegt werden.

Beseitigte Bugs:

QF-Test Version 5.0

Version 5.0.3 - 17. Juni 2020

Neue Features:

  • SWT QF-Test unterstützt nun auch Tests für Anwendungen, die auf Eclipse/SWT 4.16 bzw. "2020-06" basieren.
  • Die mitgelieferte Bibliothek jsch.jar, die vom Package qfs.utils.ssh in der Standardbibliothek qfs.qft benötigt wird, wurde zu Version 0.1.55 aktualisiert, um moderne Linux Systeme wie Ubuntu 20 zu unterstützen.

Beseitigte Bugs:

  • Die eingebettete WebP Grafik-Komprimierungsbibliothek wurde auf Version 1.0.0 zurückgestellt um Inkompatibilitäten zu vermeiden.
  • Web Die Komponentenerkennung ist fehlgeschlagen wenn Komponenten nicht ganzzahlige Größen hatten.
  • Ein Aufruf von rc.callProcedure in den Parametern eines 'Prozeduraufruf' Knotens konnte in seltenen Fällen dazu führen, dass die globalen Variablen vom Variablen-Stapel verschwinden.
  • Die spezielle Syntax ${qftest:engine.<componentid>} zur Bestimmung der GUI-Engine einer Komponente funktioniert jetzt auch falls <componentid> ein '@', '%' oder '&' Zeichen enthält.
  • Durch Selektieren eines Wertes in der Fehlerliste eines Protokolls und anschließende doppelte Ausführung von "Als Filter setzen" konnte zu einer ArrayIndexOutOfBoundsException führen.

Version 5.0.2 - 5. Mai 2020

Neue Features:

  • Die WebP Grafik-Komprimierungsbibliothek wurde auf Version 1.1.0 aktualisiert.
  • Die Wiedergabe von Tastaturevents im JXBrowser ist nun stabiler.
  • Der Kontrast von Icons in der Werkzeugleiste wurde verbessert, insbesondere für deaktivierte Buttons.
  • QF-Test unterstützt nun Tests mit Opera 68.

Beseitigte Bugs:

  • Angular 9 wird nun korrekt automatisch erkannt.
  • Der 'CSV Datei' Knoten liest eine UTF-8 kodierte CSV-Datei mit BOM nun auch dann richtig ein, wenn diese mit einem geschützten komplexen Ausdruck beginnt.
  • Windows-Tests Der 'Windows Anwendung starten' Knoten kann nun wieder über eine im 'Fenstertitel' Attribut angegebene Klasse (-class) die Verbindung mit einem Client herstellen.
  • Die Fehlerbehandlung und Wiederholung im Fall eines fehlerhaften automatischen Downloads von WebDriver Bibliotheken wurde verbessert.
  • Windows-Tests Komponentenaufnahme mit flacher Hierarchie hat nicht funktioniert.
  • Der PDF Client kann jetzt Text Komponenten prüfen, die ausschließlich aus null-Zeichen "\u0000" bestehen und behandelt diese als Leerstring.

Version 5.0.1 - 2. März 2020

Neue Features:

  • Windows-Tests Es wurde eine neue Demo-Testsuite für die Windows 10 Anwendung "Rechner" hinzugefügt.
  • QF-Test unterstützt nun Opera 67 mit dem Operadriver 80.0.3987.100.
  • SWT QF-Test unterstützt nun auch Tests für Anwendungen, die auf Eclipse/SWT 4.15 bzw. "2030-03" basieren.

Beseitigte Bugs:

  • Windows-Tests Bei der Komponentenaufnahme (Ganzes Fenster) wurden Elemente innerhalb eines WPF TabPanels weggelassen.
  • Die Prozedur qfs.database.executeSelectStatement funktioniert nun wieder mit Datenbanken, die einen expliziten db.commit() Befehl benötigen.
  • Bei Ausführung eines 'Server HTTP Request' Knotens wurde fälschlicherweise bei einem Server-Fehler der Rückgabewert nicht in eine Variable geschrieben.
  • JavaFX Bei der Berechnung eines Hashwerts für eine JavaFX Grafik konnte eine NullPointerException im Terminal erscheinen.
  • Windows-Tests Ein Windows TextField wurde eventuell vor der Texteingabe nicht geleert.
  • Windows-Tests In WPF Windows Anwendungen konnte gelegentlich fälschlicherweise eine ModalDialogException geworfen werden.

Wesentliche neue Features in Version 5

Hinweis Eine detaillierte Aufstellung der Neuigkeiten finden Sie in den Release Notes für QF-Test Version 5.0.0 weiter unten.

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

BeschreibungWeiterführende Informationen
Neue GUI-Engine: Windows Testen nativer Windows Anwendungen
Modernisierte Benutzeroberfläche für QF-Test QF-Test sieht nun moderner aus
Tests mit Java 14 Anwendungen mit Java 14 können nun getestet werden
Testsuiten mit Kommentaren 'Kommentar' Knoten direkt im Baum der Testsuite
Edge auf Chromium Basis Tests mit dem finalen Edge auf Chromium Basis sind nun möglich
Datei-Download mit Hilfe des 'Server HTTP Request' Knotens Attribut 'Antwort in Datei speichern'
Tabelle B.1:  

Änderungen mit möglichen Auswirkungen auf die Testausführung:

Nicht mehr unterstützte Software:

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

  • Das Testen von Anwendungen mit Java 6 wird nicht mehr unterstützt.

Version 5.0.0 - 6. Februar 2020

Neue Features:

  • Mit der neuen Windows Engine kann QF-Test nun native Windows-Anwendungen testen.
  • Es werden nun Tests für Anwendungen unterstützt, die auf Java 14 basieren.
  • Mit dem neuen 'Kommentar' Knoten kann die Struktur und Lesbarkeit von Testsuiten und Protokollen verbessert werden.
  • Mit Hilfe des neuen Attributs 'Antwort in Datei speichern' im 'Server HTTP Request' Knoten ist es nun möglich, Dateien herunterzuladen.
  • Windows-Tests Es wurde ein Package speziell für Windows Anwendungen in der Standardbibliothek qfs.qft hinzugefügt.
  • Unter Windows 10 wird QF-Test jetzt auf skalierten hochaufgelösten Monitoren korrekt dargestellt.
  • Web Im Handbuch wurde das Kapitel Testen von Webseiten überarbeitet und ein Abschnitt (Abschnitt 47.1.3) mit der Beschreibung der Prozedur qfs.web.ajax.installCustomWebResolver in der Standardbibliothek hinzugefügt.
  • Die Option Benachrichtigen nach hat nun eine Auswahlmöglichkeit, um auch nach einem fehlerfreien Test einen Infodialog anzuzeigen.
  • Beim Öffnen der Ergebnisliste nach einer Suche wird der Suchdialog nun automatisch geschlossen.
  • Mit Hilfe der neuen Prozedur qfs.util.click in der Standardbibliothek qfs.qft ist es möglich, einen Klick auf eine beliebige Bildschirmkoordinate abzuspielen.
  • Es ist jetzt möglich im Schnellstart-Assistenten für Electron auszuwählen, dass der benötigte ChromeDriver automatisch erkannt werden soll.
  • Beim Kopieren eines 'Prozeduraufruf', 'Testaufruf' oder 'Bezug auf Abhängigkeit' Knotens wird nun zusätzlich der Name des Zielknotens als Text in die Zwischenablage übernommen.
  • Web Der mitgelieferte GeckoDriver wurde auf Version 0.26.0 aktualisiert.
  • Web Unter Windows können Webseiten mit Microsoft Edge ab Version 78 nun auch im Headless-Modus getestetet werden.
  • Web QF-Test unterstützt nun auch Opera 66 mit dem Operadriver 79.0.3945.79.
  • Über die neue Variable engine.$(componentId) in der speziellen qftest Gruppe ist es möglich, herauszufinden, zu welcher GUI-Engine eine bestimmte Komponente gehört.
  • Der Projektbaum in QF-Test wird jetzt mit Hilfe der natürlichen Sortierreihenfolge angeordnet.
  • Im Schnellstart-Assistenten für Mobile Emulation wurden Daten für mehrere neue mobile Geräte ergänzt.

Beseitigte Bugs:

  • Bei knappem Speicher wurden eventuell Abbilder nicht im Protokoll gespeichert.
  • Eine sporadisch beim Erstellen einer Testsuite aus einem Protokoll auftretende Exception wurde beseitigt.
  • 'Finally' Knoten in einem 'Try' werden jetzt auch dann ausgeführt, wenn innerhalb des 'Try' Knotens ein sofortiger Rerun ausgelöst wird.
  • Die ImageWrapper Methoden loggen nun eine Warnung wann immer diese Methoden fehlschlagen.
  • In sehr seltenen Fällen konnte es nach der Testausführung dazu kommen, dass die [Strg] Taste nach Beendigung der Wiedergabe im "gedrückt" Status blieb.

QF-Test Version 4

QF-Test Version 3