Quality First Software GmbHgradient
Quality First Software GmbH
ProfessionelleTestautomatisierung
Home|Kontakt|English
QF-Test  –  Das GUI Testtool für Java und Web Demo VideoDownloadQF-Test BroschüreQF-Test

Release Notes

Dieses Dokument beschreibt die Änderungen an QF-Test seit Version 3.0.

Hintergrundinformationen zum Versionskonzept von QF-Test finden Sie unter Der Produktzyklus einer QF-Test Version.

Die aktuelle Version von QF-Test steht hier zum Download.

Release Notes

Version 3.4.4 - 30. Januar 2012

Neue Features:

bullet 
Es werden nun die aktuellen Versionen von Firefox 9 und Firefox 10 unterstützt.
bullet 
Es wird nun Eclipse/SWT Version 3.8M5 und experimentell auch Eclipse/SWT Version 4.2M5 unterstützt.
bullet 
Es gibt neue Checks für SWT Decorations, kleine Icons, die üblicherweise neben einem Textfeld angezeigt werden. Sie können nun die Sichtbarkeit, das Icon und den Tooltip einer Decoration prüfen.
bullet 
Iterationsbereiche können nun auch dann verwendet werden, wenn Daten auf Skriptebene über das databinder Modul oder durch Aufruf einer der 'Prozeduren' qfs.databinder.bindList oder qfs.databinder.bindSet in der Standardbibliothek qfs.qft bereitgestellt werden.
bullet 
Die Miniaturbilder in HTML Reports sind nun von besserer Qualität.

Beseitigte Bugs:

bullet 
Eine kleine Änderung in QF-Test Version 3.4.3 im Bezug auf die RMI Kommunikation zwischen QF-Test und dem SUT wurde zurückgenommen, da sie zu Problemen führen konnte, wenn das SUT selbst RMI verwendet.
bullet 
Bei 'Check Abbild' Knoten mit speziellem Algorithmus und einer Wartezeit wurde immer die gesamte Wartezeit ausgeschöpft, selbst wenn die Bilder sofort übereinstimmten.
bullet 
Wenn ein 'Check' Knoten mit Wartezeit fehlschlägt, zeigte QF-Test bisher den Status der Zielkomponente zu Beginn des Checks an. Nun wird stattdessen der Status am Ende der Wartezeit aufgeführt.
bullet 
Wurden Knoten mittels Drag&Drop im Baum von QF-Test verschoben, konnte der Baum in speziellen Fällen wild durch die Gegend springen.
bullet 
Der Versuch, den selben Knoten mit Hilfe des Ergebnisdialogs der Suche zweimal zu entfernen, konnte zu einer Exception führen.
bullet 
In der Standardbibliothek qfs.qft aktualisiert die 'Prozedur' qfs.shellutils.touch nun bei existierenden Dateien den Zeitstempel korrekt und die 'Prozedur' qfs.autowin.getURLFromIE funktioniert nun auch mit Internet Explorer Version 6.
bullet 
Bei der Aufnahme eines Mausklicks auf ein SWT ToolItem, das ein Menü öffnet, werden die Koordinaten nun so aufgenommen, dass der Event korrekt wiedergegeben werden kann.
bullet 
Wurde nach dem Schließen eines modalen Browser-Fensters ein Fehlerdialog angezeigt, konnte es passieren, dass das Hauptfenster des Browsers nach dem Schließen dieses Dialogs blockiert blieb.
bullet 
Javascript Fehler im Internet Explorer wurden im Protokoll von QF-Test nicht korrekt wiedergegeben.
bullet 
In speziellen Fällen konnte das initiale Laden einer Webseite fehlschlagen.
bullet 
Das Hervorheben der selektierten Komponente im Browser funktioniert unter Linux nun besser.
bullet 
Webseiten mit einem Flash Element wurden unter Linux teilweise nicht korrekt angezeigt.
bullet 
Der Dateiname, der beim Upload einer Datei unter Linux aufgezeichnet wurde, enthielt fälschlicherweise das Windows Trennzeichen für Dateipfade '\'.
bullet 
Es gab Probleme mit dem Start des Browsers unter speziellen Windows Versionen, wenn QF-Test in einem Verzeichnis mit Leerzeichen installiert wurde, z.B. "C:\Program Files (x86)".

Version 3.4.3 - 27. Oktober 2011

Neue Features:

bullet 
Es werden nun die aktuellen Versionen von Firefox 8 und Firefox 9 unterstützt.
bullet 
Der 'Excel Datei' Knoten kann nun auch .xslx Dateien im Excel 2010 Format lesen.
bullet 
Bei einigen Algorithmen für Bildvergleiche wurde die Performanz deutlich verbessert.
bullet 
Es ist nun möglich, den aktuellen Wert einer Option per Skript über die Methode rc.getOption zu bestimmen.

Beseitigte Bugs:

bullet 
Beim Wechsel von Testsuiten durch Klick auf den Reiter für eine Suite wurde der Tastaturfokus nicht korrekt wieder hergestellt.
bullet 
Das Tastenkürzel [Strg-D] zum Setzen von Lesezeichen funktionierte nicht.
bullet 
Das Springen von einem Knoten im Debuggerfenster zum selben Knoten in der Testsuite funktioniert nun wieder.
bullet 
In besonderen Fällen konnte QF-Test unter Windows beim Versuch das SUT zu beenden den falschen Prozess abschießen.

Version 3.4.2 - 15. September 2011

Neue Features:

bullet 
Firefox 6 wird nun voll, Firefox 7 experimentell unterstützt.
bullet 
Zur einfacheren Integration mit Continuous Integration Tools wie Hudson/Jenkins oder TeamCity kann der Exit-Status von QF-Test im Batchmodus als 0 erzwungen werden, auch wenn Warnungen, Fehler oder Exceptions auftreten. Die entsprechenden Kommandozeilenargumente lauten -exitcodeignorewarning, -exitcodeignoreerror und -exitcodeignoreexception.
bullet 
Sofern die Option "Geschützte Leerzeichen durch normale ersetzen" aktiviert ist, stellt QF-Test geschützte Leerzeichen (no-break Space) in Webseiten als normale Zeichen in Checks und in Attributen von 'Komponente' Knoten dar, um Verwirrung zu vermeiden.
bullet 
QF-Test unterstützt nun Aufnahme und Wiedergabe von "expand" und "collapse" Events für SWT ExpandItems.

Beseitigte Bugs:

bullet 
Das integrierte Hilfe-Fenster von Eclipse verwendet unter Windows ein separates SWT Display, was zu Problemen bei der Wiedergabe führte. Dieses wird nun zuverlässig als 'GUI Engine' "swt1" angesprochen.
bullet 
Die direkte Ausführung von Javascript Code funktioniert nun trotz stärkerer Sicherheitsüberprüfungen auch im Internet Explorer 9.
bullet 
Der AJAX Resolver für GWT hat nun Version 1.4.0 mit verbesserter Filterung von <DIV> Knoten aus der Komponentenhierarchie.
bullet 
Das Öffnen eines modalen Popup-Fensters konnte Firefox 6 unter Windows zum Absturz bringen.
bullet 
Doppelklicks werden im Internet Explorer nun korrekt aufgenommen.
bullet 
Ein 'Text auslesen' Knoten für ein <SELECT> Element ermittelt nun den Text des darin selektierten <OPTION> Elements. 'Text auslesen' Knoten für <OPTION> Elemente, die als Unterelemente dargestellt sind, funktionieren nun korrekt.
bullet 
Die Ausgabe von Unicode Text in Jython konnte im Batchmodus zu Problemen führen.
bullet 
Der Inhalt von 'Datentabelle' Knoten fehlte im Protokoll.
bullet 
Ein 'Warten auf Client' Knoten mit sehr kurzer 'Wartezeit' warf keine ClientNotConnectedException, wenn er als Einzelschritt im Debugger ausgeführt wurde.
bullet 
Der QF-Test Daemon erzeugte beim Start eines entfernten SUT Prozesses für die Prozedur qfs.daemon.startRemoteSUT Threads, die nicht korrekt beendet wurden.
bullet 
Beim Übernehmen von fehlgeschlagenen Abbild-Checks aus dem Protokoll wurde die Größe des Abbilds nicht in allen Fällen korrekt übernommen.
bullet 
Bei der Aufnahme von Prozeduren erstellte QF-Test keine Prozedur für eine Komponente, wenn deren Attribute keinen Wert für einen Platzhalter wie <COMPFEATURE> hatten.

Version 3.4.1 - 15. Juli 2011

Neue Features:

bullet 
Firefox 5 wird nun voll, Firefox 6 experimentell unterstützt.
bullet 
Die SWT Unterstützung wurde für Eclipse 3.7 Indigo aktualisiert.
bullet 
Groovy wurde zu Version 1.7.10 aktualisiert.
bullet 
Fehlermeldungen von Groovy Skripten werden nun mit vernünftigem Kontext und Zeilennummern angegeben.
bullet 
QF-Test erkennt nun auch Unterkomponenten von abgeleiteten SWT Komponenten, die ihre Kinder durch Überladen der Methode getChildren() mit leerem Rückgabewert verstecken.
bullet 
Es werden nun ExtJS Version 4 und RichFaces Version 4 unterstützt.
bullet 
Das Attribut 'Als Regexp' von 'Fenster' und 'Komponente' Knoten kann nun als variabler Wert definiert werden.
bullet 
Die vom Schnellstart-Assistenten für Webanwendungen erstellte Startsequenz ist nun intelligenter aufgebaut und flexibler anpassbar.
bullet 
Auf Windows Systemen macht QF-Test nun von der Eigenschaft "Immer im Vordergrund" Gebrauch, um Fenster des SUT nach vorne zu zwingen, selbst wenn Windows das normalerweise nicht zulässt. Diese Funktionalität kann über die Option "Beim Nach-vorne-bringen Fenster in den Vordergrund zwingen" deaktiviert werden.
bullet 
Es gibt einen neuen Check, mit dem direkt das Icon einer Komponente geprüft werden kann, ohne erst einen Abbild-Check für die gesamte Komponente aufzunehmen und in diesem dann die gewünschte Region zu markieren.

Beseitigte Bugs:

bullet 
Beim Startvorgang prüfte QF-Test nicht auf automatisch gespeicherte Dateien, wenn die Testsuiten zur Wiederherstellung der letzten Sitzung geladen wurden.
bullet 
Es war durch Drücken von [Return] zum richtigen Zeitpunkt möglich, parallele Tests im selben Kontext anzustoßen, was zu verwirrenden Einträgen im Protokoll und zu Exceptions führen konnte.
bullet 
Swing Anwendungen, die über Java WebStart gestartet werden, haben zwei getrennte Kontexte, einen Anwendungs und einen Sicherheits-Kontext. Ein 'SUT Skript' wird nun immer korrekt im Anwendungs-Kontext ausgeführt, sofern nicht explizit im Attribut 'GUI Engine' der Sicherheits-Kontext ausgewählt ist.
bullet 
Es fehlte spezielle Unterstützung für JSlider Komponenten.
bullet 
Die spezielle Variable ${qftest:runid} lieferte nicht den korrekten Wert, wenn die Runid im Batchmodus explizit mittels -runid <id> angegeben wurde.
bullet 
Ein durch ein spezielles PHP Konstrukt erzwungener Download konnte den Internet Explorer zum Absturz bringen.
bullet 
Das Löschen des Cache für Firefox funktionierte nicht zuverlässig.
bullet 
Beim Versuch, einen Check für ein im Internet Explorer dargestelltes XML Dokument aufzunehmen, konnte dieser abstürzen.
bullet 
Es ist nun auch dann möglich, Checks für Applets aufzunehmen, wenn diese in QF-Test's Browser eingebettet sind.
bullet 
Die Groovy Implementierung von qf.logError war nicht korrekt.
bullet 
In einer Workbench-Ansicht mit vielen offenen Testsuiten und einigen nach links herausgescrollten Testsuite-Reitern lagen die Koordinaten für das Ziehen von Testsuiten oder von Knoten in andere Testsuiten daneben, was zu überraschenden Ergebnissen führen konnte.
bullet 
QF-Test gab Ressourcen bei der Aufnahme von Bildschirmabbildern innerhalb eines Eclipse/SWT SUT nicht korrekt frei.
bullet 
Ein Aufruf von Display.asyncExec aus einem Timer konnte zum Absturz von Eclipse unter Linux Gtk 64 Bit führen.
bullet 
Die Reihenfolge von SWT.Activation Events unterschied sich bei simulierten Events minimal von der bei manueller Interaktion mit dem SUT.
bullet 
Ein sehr langer Suchtext konnte die Größe des Suchen und Ersetzen Dialogs über den Haufen werfen.
bullet 
Markierungen in Protokollen propagierten nicht über 'Externes Protokoll' Knoten hinweg.
bullet 
Der Rückgriff auf Lazy Binding klappte für noch nicht definierte Properties nicht.

Wichtige neue Features in QF-Test Version 3.4

Die folgende Übersicht fasst die wichtigsten neuen Features zusammen, die für QF-Test Version 3.4 implementiert wurden. Detaillierte Informationen zu den Unterschieden zwischen QF-Test 3.2 und 3.4 finden Sie unten in den Release Notes.

bullet 
Jython zu Version 2.5.1 aktualisiert
bullet 
Groovy zu Version 1.7.6 aktualisiert
bullet 
Unterstützung für Eclipse/SWT 3.6.2 und 3.7
bullet 
Web-Testen unterstützt Firefox 4 und 5, sowie Internet Explorer 9
bullet 
Integration mit dem Continuous Integration Tool Hudson/Jenkins
bullet 
Fehlertolerante Abbild-Checks
bullet 
Verbesserte Suche
bullet 
Iterationsbereiche für Datentreiber
bullet 
Direkte Interaktion mit Webservern
bullet 
Erweiterte Import-Funktionen
bullet 
Debugger in die Workbench integriert
bullet 
Erstellen einer Testsuite aus einem Protokoll
bullet 
Automatisches Teilen von Protokollen und bessere Behandlung von OutOfMemoryErrors.
bullet 
Verbesserte rückwärts/vorwärts Navigation
bullet 
Verbesserte Pkgdoc und Testdoc Dokumentation
bullet 
Verbesserte Abstraktion von Koordinaten für Mausevents
bullet 
Variablen mit Defaultwerten und viele zusätzliche Spezial-Variablen

Patch 3.4.0-p1 - 27. Juni 201

Neue Features:

bullet 
Es wird nun das Testen von Firefox Version 5 und Eclipse/SWT Version 3.7 Indigo unterstützt.

Version 3.4.0 - 26. Mai 2011

Neue Features:

bullet 
Die Unterstützung für Eclipse/SWT Version 3.7 wurde aktualisiert.
bullet 
Alle 'Daten' Knoten haben nun ein Attribut namens 'Iterationsbereiche', das dazu genutzt werden kann, die Iteration auf ein einzelnes Element oder ein oder mehrere Intervalle zu beschränken. Dies kann bei der Testentwicklung sehr hilfreich sein, oder um einen Test fortzusetzen, der abgebrochen wurde, oder einen erneuten Test mit einer begrenzten Untermenge von Daten durchzuführen.
bullet 
In der Workbench-Ansicht wird die aktuelle Sitzung, d.h. die geöffneten Testsuiten und die aktuelle Position darin, beim Beenden von QF-Test gespeichert und beim Start wieder hergestellt, sofern die Option "Letzte Sitzung beim Start wiederherstellen" aktiviert ist. Weiterhin wurde die Workbench-Ansicht um die Möglichkeit erweitert, über das »Datei« Menü alle modifizierten Testsuiten zu speichern und es kann nun via [Strg-F6] zwischen den zuletzt aktiven Testsuiten gewechselt werden.
bullet 
Der Wechsel zum vorhergehenden/nächsten Knoten wurde vereinheitlicht und sollte nun auch in Spezialfällen konsistent funktionieren. Nach der Aufnahme von Komponenten können Sie nun durch Sprung zum nächsten Knoten direkt zur aufgenommenen 'Komponente' springen, selbst wenn kein neuer Knoten aufgenommen wurde und der existierende Knoten sich in einer anderen Testsuite befindet.
bullet 
In den Ergebnis-Dialogen für Suchen/Ersetzen und andere Funktionen können die Einträge nun gefiltert werden.
bullet 
Markierungen können nun auch für Knoten in Protokollen gesetzt werden, so dass mehrstufige Suchoperationen auch in Protokollen möglich sind.
bullet 
Im Schnellstart-Assistenten wurde die Unterstützung von Applets in einem Browser verbessert und für Webanwendungen im Internet Explorer kann nun der Kompatibilitätsmodus angegeben werden. Umgesetzt werden diese Funktionen über die neuen Prozeduren qfs.web.browser.general.startAsNewProcess und qfs.web.browser.settings.enableCompatibilityMode in der Standardbibliothek qfs.qft.
bullet 
Beim Start im Batchmodus mit dem Kommandozeilenargument -verbose [<level>] wird nun für jeden durchgeführten 'Testfall' die Zahl der Exceptions, Fehler und Warnungen angegeben.
bullet 
Das neue Package qfs.autowin.acrobat in der Standardbibliothek qfs.qft enthält Methoden zum Speichern eines in Acrobat angezeigten PDF Dokuments und zum Kopieren von dessen Text über die Zwischenablage (nur Windows). Diese werden ergänzt durch das Package qfs.utils.files mit Prozeduren, um den Inhalt einer Textdatei zu überprüfen.
bullet 
Die neuen Methoden setProperty und getProperty im generischen Skript-Modul qf können dazu verwendet werden, beliebige Daten mit einem GUI Element zu assoziieren, z.B. um sich in einem Resolver ein Merkmal, einen Namen oder andere Informationen zu merken, deren erneute Bestimmung bei jedem Aufruf des Resolvers zu aufwändig wäre.
bullet 
Die TestRunListener API wurde so erweitert, dass nun die Anzahl der Exceptions, Fehler und Warnungen, die unterhalb eines Knotens aufgetreten sind, im TestRunEvent des Aufrufs der Methode nodeExited für den betreffenden Knoten bereitgestellt werden.
bullet 
Der AJAX Resolver für GWT wurde zu Version 1.2.0 aktualisiert. Er filtert nun irrelevante <DIV> Knoten aus der Hierarchie der Komponenten und kommt besser mit obfuskierten GWT Klassennamen zurecht.

Beseitigte Bugs:

bullet 
Das Überwachen des verfügbaren Speichers zur besseren Behandlung von OutOfMemoryErrors konnte die Geschwindigkeit der Testausführung mit JDK 1.5 unter Windows deutlich herabsetzen. Nun sollten die Tests wieder mit allen JDK Versionen mit voller Geschwindigkeit ablaufen.
bullet 
Einige der erweiterten Algorithmen für Abbild-Vergleiche funktionierten nicht sauber mit JDK 1.5. Nun werden alle verwendeten Algorithmen auch für JDK 1.5 voll unterstützt und liefern konsistente Ergebnisse, unabhängig von der JDK Version, mit Ausnahme von Änderungen der Bildgröße, die in den verschiedenen JDK Versionen unterschiedlich implementiert sind und zu geringfügigen Abweichungen bei der berechneten Wahrscheinlichkeit führen können.
bullet 
Die Prozedur qfs.shutil.copy in der Standardbibliothek qfs.qft war fehlerhaft. Sie kopiert nun Dateien und Verzeichnisse korrekt, rekursiv falls nötig und fängt Sonderfälle wie das Kopieren eines Verzeichnisses in sich selbst korrekt ab.
bullet 
'Check Abbild' Knoten funktionieren nun auch mit Firefox 4.0 korrekt.
bullet 
Das Sichtbarscrollen eines Elements war im IE9 und bei Spezialfällen mit tief verschachtelter Hierarchie nicht immer möglich.
bullet 
Im IE9 wurden Knoten nicht immer korrekt hervorgehoben und das Hervorheben konnte die Aufnahmen von Abbild-Checks stören.
bullet 
Browser-Einstellungen für IE9 wurden zum Teil ignoriert.
bullet 
Ein Download, der in einem Popup-Fenster angestoßen wurde, konnte den Browser zum Absturz bringen.
bullet 
Ein laufender Test im QF-Test Daemon kann nun auch dann mittels -stoprun unterbrochen und sauber gestoppt werden, wenn der Test gerade auf etwas wartet.
bullet 
Die Struktur des JUnit XML Reports ist nun zu Atlassian Confluence kompatibel.
bullet 
In Groovy war die Methode rc.getProperties() nicht korrekt implementiert.

Version 3.4M2 - 10. März 2011

Neue Features:

bullet 
Es werden nun Eclipse/SWT Versionen 3.6.2 und 3.7 Milestone 5 unterstützt.
bullet 
Suchen und Ersetzen-Dialog sind nun integriert, so dass zunächst eine Suche gestartet und dann mit den gleichen Kriterien ersetzt werden kann. Der Ersetzen-Dialog ist nun nicht mehr modal und kann während des Arbeitens geöffnet bleiben.
bullet 
Die Integration der Debugger-Funktionalität in die Workbench-Ansicht ist nun abgeschlossen. Die Ansicht mit den aktuellen Variablen wird nun beim Betreten des Debuggers automatisch in das Workbench-Fenster eingeblendet, sofern die Option "Variablen automatisch anzeigen" nicht ausgeschaltet ist.
bullet 
Mittels der Tastaturkürzel [Alt-1] bis [Alt-9] kann direkt zum entsprechenden Testsuite-Reiter in der Workbench-Ansicht gesprungen werden.
bullet 
Nach Drücken von [F2] im Baum der Testsuite setzt QF-Test den Fokus direkt auf das Attribut in der Detail-Ansicht, das für die Darstellung des Knotens im Baum relevant ist.
bullet 
Die neue 'Prozedur' qfs.client.renameClient in der Standardbibliothek qfs.qft dient zum Umbenennen eines SUT Clients, nachdem er sich mit QF-Test verbunden hat. Dies ist insbesondere für ein SUT hilfreich, das mehrere Unterprozesse startet, die sich dann als client:2, client:3 etc. verbinden.
bullet 
Die neue spezielle Variablensyntax $_{qftest:skipnode} dient zum Überspringen eines Knotens.
bullet 
Hyperlinks im Eclipse FormText Widget werden nun als Unterelemente angesprochen.
bullet 
Erweiterte Abbild-Checks stehen nun auch mittels der neuen Runcontext Methode rc.checkImageAdvanced in Skripten zur Verfügung.
bullet 
Die verschiedenen rc.check* Methoden im Runcontext liefern nun das Ergebnis der ausgewerteten Bedingung zurück.
bullet 
Das Bild eines 'Check Abbild' Knotens in der Testsuite oder im Protokoll sowie von Bildschirmabbildern kann nun in einem separaten Fenster angezeigt werden, entweder per Doppelklick auf das Bild (nur Protokoll) oder über den entsprechenden Button oberhalb des Bildes.
bullet 
Es gibt ein neues Hilfsmodul für Skripte namens qf. Es bietet Varianten allgemein nützlicher Methoden wie isInstance sowie die Möglichkeit, Meldungen auch dann in das Protokoll zu schreiben, wenn kein Runcontext zur Verfügung steht, zum Beispiel für Checker oder Resolver Implementierungen.
bullet 
Die Templates für die Aufnahme von Prozeduren sind nun noch mächtiger. Prozeduren können nun auch bedingt erstellt werden durch Angabe von @CONDITION mit einem beliebigen Jython oder Groovy Skript.
bullet 
Die 'Prozedur' qfs.web.browser.settings.setProxy in der Standardbibliothek qfs.qft unterstützt nun auch die Angabe einer URL für die automatische Proxy-Konfiguration.

Beseitigte Bugs:

bullet 
Beim Wechsel der Ausführung zu einem anderen Knoten im Debugger konnten die Parent/Child Beziehungen im Protokoll verschoben werden.
bullet 
Das Setzen und Löschen einer Option per Skript konnte den Defaultwert der Option verändern.
bullet 
Die Wiedergabe von Doppelklicks für SWT unter Windows wurde verbessert.
bullet 
Einige Auswahl Events für SWT sorgen nun besser für den nötigen Fokusübergang.
bullet 
Leerzeilen am Beginn eines SWT StyledText Widgets werden nun auch unter Linux korrekt behandelt.
bullet 
Fehler in verschachtelten Testfällen werden nun richtig im Report angezeigt.
bullet 
Das Setzen der Proxy-Einstellungen funktioniert nun auch für Internet Explorer 9.
bullet 
'Check Abbild' Knoten funktionieren nun auch mit Firefox 4 korrekt.
bullet 
Javascript und Anmeldungs-Dialoge werden nun auch mit Firefox 4 unterstützt.
bullet 
QF-Test zeigt nun eine Warnmeldung an, wenn Sie eine schreibgeschützte Testsuite erstmals modifizieren.
bullet 
Doctags für 'Abhängigkeit' Knoten werden nun korrekt in der Pkgdoc Dokumentation angezeigt.

Version 3.4M1 - 3. Februar 2011

Neue Features:

bullet 
Groovy wurde zu Version 1.7.6 aktualisiert.
bullet 
QF-Test überwacht nun aktiv den in der Java VM für die Testausführung verfügbaren Speicher. Geht dieser zu Ende, wird der Testlauf sauber abgebrochen und das Protokoll gespeichert. Dieses Vorgehen verhindert zudem extreme Performance-Einbrüche, wenn der Speicher knapp wird.
bullet 
Um von vorne herein zu vermeiden, dass der Speicher zu knapp wird, teilt QF-Test Protokolle nun automatisch, abhängig von der Option 'Minimale Größe für automatisches Teilen (kB)'.
bullet 
Das Arbeiten mit mehreren Testsuites in der Workbench-Ansicht wurde verbessert. Die aktive Suite wird nun mit fetter Schrift hervorgehoben, die Reiter können mittels Drag&Drop beliebig angeordnet werden und ein Doppelklick rechts von allen Reitern erstellt eine neue Testsuite.
bullet 
Der Suchdialog bietet nun zusätzliche Optionen zum Einschränken der Suche, die nun auch alle geladenen Testsuiten auf einmal umspannen kann. Um den Dialog für Standardfälle nicht zu überladen, können Sie nun zwischen einfachem und erweitertem Modus wechseln.
bullet 
Der Debugger ist nun weitestgehend in die Workbench-Ansicht integriert, mit Ausnahme der Variablen-Anzeige, für die im Moment noch das separate Debuggerfenster benötigt wird.
bullet 
Es gibt einen neuen Aufnahmemodus für Webanwendungen. Dabei ignoriert QF-Test einzelne Events und nimmt stattdessen komplette GET oder POST Anfragen auf. Diese werden durch den neuen 'HTTP Request' Knoten repräsentiert. Bei dessen Wiedergabe interagiert QF-Test direkt mit dem Webserver, ohne Bedarf für einen Browser. Dies kann für Lasttests oder die Verarbeitung von Massendaten hilfreich sein.
bullet 
Für Swing und SWT Komponenten mit einem Icon nimmt QF-Test nun einen Hashwert im Attribut 'Weitere Merkmale' auf, der aus den Bilddaten berechnet wird. Sofern das Icon unverändert bleibt, sollte dies zu einer Verbesserung der Wiedererkennung führen, insbesondere für Toolbar Buttons ohne Beschriftung. Als Status für dieses Merkmal wird normalerweise 'Sollte übereinstimmen' aufgenommen. Sie können diesen zu 'Ignorieren' ändern, falls sich das Icon einer Komponente ständig ändert, oder zu 'Muss übereinstimmen', wenn das Icon am besten geeignet ist, eine Komponente zu identifizieren.
bullet 
Es gibt eine neue spezielle Variablensyntax, über die ein Defaultwert für eine Variablenexpansion angegeben werden kann. Dies ist sehr hilfreich für generische Komponenten und generell dort, wo für eine Variable ein sinnvoller Defaultwert existiert, da dieser Wert dann eng mit der Verwendung der Variablen verknüpft ist und nicht auf Ebene der Testsuite oder in einer 'Sequenz' definiert werden muss. Die Syntax hierfür lautet ${default:varname:defaultvalue}.
bullet 
Weitere spezielle Variablen liefern den Namen des aktuell ausgeführten 'Testfallsatz' oder 'Testschritt' Knotens analog zum bereits verfügbaren Namen des 'Testfalls'. Außerdem existieren nun Zähler für die ausgeführten Testfälle, aufgetretene Fehler, etc.
bullet 
Der Dialog, der die vorhandenen Methoden einer Komponente anzeigt, liefert nun auch die Ergebnisse vom Aufruf dieser Methoden, sofern diese Java Bean Werte repräsentieren.
bullet 
Die Option 'Erfolgreiche tolerante Abbildvergleiche in das Protokoll schreiben' kann aktiviert werden, um das Ergebnis eines toleranten Abbild-Checks auch im Erfolgsfall im Protokoll abzulegen. Dies kann hilfreich sein, um die Parameter für den Check-Algorithmus möglichst genau einzustellen.
bullet 
Über die neue Kommandozeilenoption -verbose [<level>] für die Batchausführung mit oder ohne Daemon können Ausgaben zum Fortschritt des Testlaufs eingestellt werden.
bullet 
Mittels der neuen 'Prozedur' qfs.utils.dumpHeap in der Standardbibliothek qfs.qft kann ein Heap-Dump der Java VM des SUT ausgelöst werden, wenn dieses zu viel Speicher verbraucht. Dies kann mit Hilfe der 'Prozedur' qfs.utils.logMemory ermittelt werden, die nun den aktuell benötigten Speicher als Ergebnis liefert.

Beseitigte Bugs:

bullet 
Bei der Wiedergabe von Mausevents ohne Koordinaten auf Unterelemente steuert QF-Test nicht mehr die Mitte des Unterelements an, sondern die Position 5 Pixel von links, vertikal zentriert. Offenbar werden manche Events nicht sauber verarbeitet, wenn sie nicht den Text eines Unterelements treffen, sondern lediglich innerhalb seiner Grenzen liegen. Unterelemente mit kurzem Text in einer breiten Spalte konnten so zu Problemen führen.
bullet 
Der Aufruf von Stored Procedures in einer Datenbank konnte mit den Standard Jython Klassen scheitern.
bullet 
Wurde bei ausgeschaltetem Debugger ein Breakpoint getroffen, konnte die anschließende Ausführung in Einzelschritten gelegentlich scheitern und der Test einfach weiter laufen.
bullet 
Ein Such-Treffer beim Status eines weiteren Merkmals konnte zu einer Exception führen.
bullet 
Leerzeichen im Namen für separate Protokolle werden nun zu Unterstrichen geändert, da Windows nicht gut mit Leerzeichen am Ende von Verzeichnisnamen zurecht kommt.
bullet 
Die Datei für einen 'CSV Datei' Knoten wird nun sofort nach dem Auslesen der Daten geschlossen.
bullet 
Rekursive Prozeduraufrufe konnten zu Problemen beim Import von Prozeduren oder der Analyse von Referenzen führen.

Version 3.3.0 - 30. November 2010

Inkompatible Änderungen:

bullet 
Die Unterstützung für Java 1.4.2 musste aufgegeben werden, um Jython und Groovy aktualisieren zu können. QF-Test erfordert nun mindestens Java Version 1.5.
bullet 
Die Interaktion zwischen Jython und Java hat sich zwischen Jython 2.2 und 2.5 etwas geändert, so dass Jython Skripte, die bisher in QF-Test funktionierten, eventuell fehlschlagen können. Wir versuchen wo immer möglich die Kompatibilität zu wahren und stellen eine Sammlung von Unterschieden und Tipps bereit, auf die Sie bei der Migration achten sollten.

Neue Features:

bullet 
Jython wurde zu Version 2.5.1 aktualisiert. Die meisten Skripte sollten unverändert laufen. Inkompatibilitäten können vor allem durch Änderungen an Zeichenkodierungen entstehen und da Java Strings von Jython nun durchgängig als Unicode Strings interpretiert werden.
bullet 
Groovy wurde zu Version 1.7.2 aktualisiert.
bullet 
Es wird nun Eclipse/SWT Version 3.6.1 unterstützt.
bullet 
Experimentelle Unterstützung für Firefox 4 und Internet Explorer 9.
bullet 
QF-Test lässt sich nun gut in das zunehmend populäre Continuous Integration System Hudson CI integrieren. Dazu gehört auch JUnit als neues Zielformat für QF-Test Reports.
bullet 
Abbild-Checks sind nicht länger auf die pixelgenaue Überprüfung beschränkt. Mehrere flexible Algorithmen erlauben nun, Abbild-Checks mit einer konfigurierbaren Toleranz für Abweichungen vom erwarteten Abbild durchzuführen.
bullet 
Neben Komponenten können nun auch Testfälle und Prozeduren von einer Testsuite in eine andere importiert werden.
bullet 
Wenn Koordinaten für Mausevents keine Rolle spielen, entfernt QF-Test diese nun komplett, anstatt sie auf (1,1) zu setzen. Bei der Wiedergabe wird der Event dann auf die Mitte der Zielkomponente bzw. des Unterelements abgespielt.
bullet 
Durch die geschickte Kombination von Such- und Ersetzungs-Operationen mit Marken kann nun Suche in mehreren Schritten verfeinert werden, so dass Sie eine genaue Kontrolle darüber erhalten, wo Ersetzungen durchgeführt werden sollen.
bullet 
Das rückwärts oder vorwärts Navigieren zwischen Knoten funktioniert nun zwischen verschiedenen Testsuiten und sogar Protokollen. So genügt nun ein einzelner Mausklick oder Tastendruck, um nach einem Sprung von einem Prozeduraufruf zu seinem Ziel in einer anderen Testsuite oder aus dem Protokoll zum entsprechenden Knoten in der Testsuite zum Ausgangspunkt zurückzukehren.
bullet 
Mehrere neue Buttons wurden zur Werkzeugleiste hinzugefügt und alle Buttons sehen nun wesentlich besser aus. Die Menüstruktur wurde ebenfalls überarbeitet. Aktionen auf Baumknoten sind nun unter dem neuen Menü »Operationen« zusammengefasst, darunter auch viele neue Transformationen von Knoten. Zudem wurden einige neue Tastaturkürzel vergeben.
bullet 
Das Layout von Pkgdoc und Testdoc Dokumenten wurde an das der Reports angepasst, inklusive Icons für Knoten und Unterstützung von Testschritten. Diese können nun auf der Kommandozeile über die Optionen -testdoc.teststeps, -testdoc.nodeicons und -pkgdoc.nodeicons oder die entsprechenden Optionen im interaktiven Dialog konfiguriert werden.
bullet 
'Übersprungene' und 'Nicht implementierte' Tests können nun im Report komplett unterdrückt werden und zwar mit Hilfe des Kommandozeilenarguments -report.ignoreskipped oder der entsprechenden Option im interaktiven Dialog.
bullet 
Tests im Daemon können nun über die Kommandozeile mit Hilfe des neuen Arguments -stoprun gestoppt werden.
bullet 
Die Bemerkung von 'Prozedur', 'Testfall' oder 'Abhängigkeit' Knoten kann nun automatisch gefüllt werden. Hierbei werden Doctags für Parameter, charakteristische Variablen und Autor vorausgefüllt. Die Aktion steht über »Weitere Knotenoperationen«-»Bemerkung füllen« im Kontextmenü zur Verfügung.
bullet 
Die TestRunListener API liefert nun auch Informationen darüber, ob ein Testlauf normal beendet wurde (mit oder ohne Exceptions), oder vorzeitig vom Anwender abgebrochen.
bullet 
Die neue Methode rc.callTest im RunContext rc dient zum Aufruf von 'Testfall' oder 'Testfallsatz' Knoten. Im Gegensatz zu callProcedure kann callTest nur aus 'Server Skript' Knoten aufgerufen werden. Die Methode liefert den Exit-Status des aufgerufenen Tests zurück.
bullet 
Die Konfigurationsdateien von QF-Test werden nun mit sortiertem Inhalt abgespeichert, was deren Ablage in einem Versionskontrollsystems deutlich vereinfacht.
bullet 
Verschiedene Prozeduren wurden zur Standardbibliothek qfs.qft hinzugefügt oder dort verbessert. Deren Dokumentation ist nun auch online verfügbar und in den Volltext-Index der QFS Webseiten integriert. Ein direkter Link zur online Textsuche, die das gesamte verfügbare technische Material abdeckt, ist über das Menü »Hilfe«-»Online Suche...« zugänglich.
bullet 
Es ist nun möglich, Testsuiten aus einem Protokoll zu erstellen.
bullet 
Mittels der neuen RunContext Methode overrideElement kann man nun GUI Elemente aus einem SUT Skript als individuelle Zielkomponente an QF-Test's Mechanismus zur Wiedererkennung übergeben.

Beseitigte Bugs:

bullet 
Aus QF-Test gestartet lief der Internet Explorer 8 immer im IE7 Kompatibilitätsmodus. Dies ist nun nicht mehr der Fall. Der Kompatibilitätsmodus kann nun explizit im Schnellstart-Assistenten oder über die Prozedur qfs.web.browser.settings.doStartupSettings in der Standardbibliothek qfs.qft gewählt werden.
bullet 
Unter Linux konnte QF-Test vereinzelt SWT/Eclipse Anwendungen durch Zugriff auf nicht mehr verfügbare Combo Popups zum Absturz bringen.
bullet 
Die Wiedergabe für Eclipse/SWT unter Linux ist nun deutlich robuster, insbesondere bei Zugriff auf Menüs.
bullet 
Leerzeilen am Ende von StyledText Widgets unter Linux werden nun korrekt behandelt.
bullet 
Die Erstellung von Reports mit vielen Bildschirmabbildern kommt nun mit sehr viel weniger Speicher aus.
bullet 
Downloads im Internet Explorer sollten nun zuverlässig funktionieren.
bullet 
Im Falle überlappender Knoten mit Transparenz wählte QF-Test für die Aufnahme von Checks gelegentlich den falschen aus. Diese Entscheidung wird nun dem Browser überlassen. Mittels der Option 'Bei Aufnahme von Checks Zielelement durch Browser bestimmen lassen' können Sie zum alten Algorithmus zurückschalten.
bullet 
Ein Speicherleck in QF-Test wurde gestopft, das im Zusammenhang mit SUT Clients auftrat, die sehr viele Ausgaben in das gemeinsame Terminal der QF-Test Workbench machten.

Version 3.2.2 - 15. Juli 2010

Neue Features:

bullet 
Es wird nun das Testen von Eclipse/SWT Version 3.6 "Helios" unterstützt.
bullet 
Im SWT FileDialog kann nun Mehrfachselektion aufgenommen und abgespielt werden.

Beseitigte Bugs:

bullet 
Performance bei der Wiedergabe konnte drastisch einbrechen, wenn das Home-Verzeichnis des Anwenders auf einem Netzlaufwerk lag.
bullet 
Eine in QF-Test 3.2.1 eingeführte Umgehung einer Schwäche in AWT konnte die Performance bei der Wiedergabe für AWT/Swing beeinträchtigen.
bullet 
Ein weiteres Performance-Problem im Zusammenhang mit sehr großen Hierarchien von Swing Menüs wurde ebenfalls beseitigt.
bullet 
Mehrere Sonderfälle beim Hochladen von Dateien mit dem Internet Explorer werden nun korrekt behandelt.
bullet 
Das Herunterladen von Dateien mit dem Internet Explorer funktioniert nun auch bei HTTP Redirection korrekt.

Version 3.2.1 - 11. Mai 2010

Beseitigte Bugs:

bullet 
Mit einem 1.4 JDK startete QF-Test im interaktiven Modus nur, wenn beim Start bereits eine zu öffnende Datei angegeben wurde.
bullet 
Web-Tests funktionieren nun auch wieder unter Windows 2000.
bullet 
Der QF-Test Debugger zeigte für 'Prozeduraufruf' und 'Testaufruf' Knoten jeweils zwei Einträge auf dem Variablenstapel an.
bullet 
Es gab ein Speicherleck beim interaktiven Editieren von Testsuiten mit 'Check Abbild' Knoten für große Bilder.
bullet 
In sehr speziellen Fällen konnten beim Import von Komponenten in ihre eigene Testsuite Referenzen falsch angepasst werden.
bullet 
Beim Speichern von Protokollen im ZIP konnten vereinzelt Einträge nicht geschrieben werden. QF-Test umgeht nun das Problem in der zu Grunde liegenden Bibliothek.
bullet 
Zwei Probleme für SUTs mit mehr als einer GUI Engine, z.B. einer WebStart Anwendung oder einer SWT/Swing Kombination, wurden beseitigt. In solch einem Fall zeichnete QF-Test bei Fehlern mehr als einen Screenshot für den gesamten Bildschirm auf und manchmal konnte die Verbindung mit der zweiten GUI Engine fehlschlagen.
bullet 
Der Dialog zum Hochladen von Dateien auf einer Webseite wurde von QF-Test nicht für alle Browser korrekt erkannt. Zudem konnte die Prozedur qfs.web.input.fileUpload in der Standardbibliothek qfs.qft nicht alle Fälle korrekt behandeln.
bullet 
In neueren QF-Test Versionen gab es neben dem lokalen Jython Runcontext rc inoffiziell auch eine globale Version. In speziellen Fällen konnte dies zu einem Namenskonflikt führen, so dass die (weiterhin inoffizielle) globale Version in __rc umbenannt wurde.
bullet 
Einige kleine Probleme und gelegentliche Exceptions in Verbindung mit Ergebnislisten wurden beseitigt.

Neue Features in QF-Test Version 3.2

Die folgende Übersicht fasst die wichtigsten neuen Features zusammen, die für QF-Test Version 3.2 implementiert wurden. Detaillierte Informationen zu den Unterschieden zwischen QF-Test 3.0 und 3.2 finden Sie in den Release Notes zu den Versionen 3.2.0 und 3.1.x.

bullet 
Unterstützt Webtesten in Kombination mit Java Applets
bullet 
Keine JDK Instrumentierung mehr nötig
bullet 
Workbench Ansicht für eine moderne Oberfläche
bullet 
'Testschritt' Knoten für detaillierte Reports
bullet 
Refactoring mit automatischem Update von Referenzen
bullet 
Integration mit dem Open Source Test-Management Werkzeug TestLink
bullet 
Neuer 'Best Practices' Teil im Handbuch
bullet 
Eclipse/SWT Unterstützung für die aktuellsten Versionen inklusive GEF
bullet 
Inkrementelle Suche in allen Textfeldern von QF-Test
bullet 
Ergebnislisten für komplexe Operationen
bullet 
Komponenteninspektor zeigt Methoden und Felder von Komponenten an
bullet 
Optionen können auf Skriptebene gesetzt werden
bullet 
Relative und Testsuite-lokale Prozeduren
bullet 
Neue 'Check' Knoten und Checker API für eigene Checks
bullet 
Statische Validierung von Referenzen
bullet 
Automatische Parametrisierung von Prozeduren
bullet 
Persistente Lesezeichen und nicht-persistente Markierungen
bullet 
Neue APIs: ItemResolver, Checker, ClassNameResolver und TestRunListener

Version 3.2.0 - 25. März 2010

Neue Features:

bullet 
Die Unterstützung für Eclipse/SWT wurde auf den Stand der aktuellen Versionen 3.5.2 und 3.6M6 gebracht.
bullet 
Die Hervorhebung von Swing Komponenten erfolgt nicht mehr durch den Austausch von Vorder- und Hintergrundfarbe, sondern durch Übermalen mit einem farbigen Rechteck analog zu SWT und Web. Hierbei werden nun auch Unterelemente gekennzeichnet.
bullet 
Der neue 'Check Boolean' Knoten mit 'Name des Check-Typs' Attribut 'visible' ist analog zu einem 'Warten auf Komponente' Knoten, wird aber im Gegensatz zu diesem im Report als Check aufgeführt und hat andere Standardwerte für die Ergebnisbehandlung.
bullet 
Die zuletzt angesprochene Komponente und gegebenenfalls das zugehörige Unterelement können in Groovy und Jython 'SUT Skript' Knoten nun mittels rc.getLastComponent() und rc.getLastItem() abgefragt werden.
bullet 
Die Auswahl einer Datei zum Upload in einem Web-Formular kann nun unter Windows direkt aufgenommen und wiedergegeben werden. Für eine plattformunabhängige Wiedergabe muss im Moment weiterhin die Prozedur qfs.web.input.fileUpload aus der Standardbibliothek qfs.qft aufgerufen werden.
bullet 
Die Ergebnislisten für komplexe Operationen wurden um weitere Funktionen ergänzt. Sie können nun z.B. die eigentliche Ersetzung aus der Ergebnisliste für den "Ersetzen" Dialog vornehmen oder mehrere fehlgeschlagene Checks auf einmal aus der Fehlerliste eines Protokolls heraus aktualisieren. Zudem werden die Listen für eine länger dauernde Operation nun kontinuierlich gefüllt und die Operation kann bei Bedarf abgebrochen werden.
bullet 
Zuletzt verwendete Suchausdrücke werden nun in der Anwender-Konfigurationsdatei gespeichert.
bullet 
'Abhängigkeit' Knoten in 'Packages' werden nun in pkgdok Dokumenten aufgeführt, sofern sie nicht im Batchmodus über das Kommandozeilenargument -pkgdoc.dependencies oder die entsprechende interaktive Option unterdrückt werden.

Beseitigte Bugs:

bullet 
Rechts-Klicks für in Javascript implementierte Popups müssen nicht länger als harte Events wiedergegeben werden, um das Popup zuverlässig auszulösen.
bullet 
Bei der Aufnahme von Checks wird nun die Z-Order von DOM Knoten korrekt berücksichtigt, so dass nicht länger eigentlich verdeckte Knoten im Hintergrund aufgezeichnet werden.

Version 3.1.4 - 9. Februar 2010

Neue Features:

bullet 
Es ist nicht länger nötig, Standard JDKs und JREs zu instrumentieren, wobei eine bereits vorhandene Instrumentierung nicht schadet.
bullet 
Es wird nun die aktuelle Eclipse/SWT Version 3.6 unterstützt.
bullet 
Es wird nun Firefox 3.6 unterstützt.
bullet 
Der neue Teil II 'Best Practices' im Handbuch beschreibt empfohlene Vorgehensweisen basierend auf Erfahrungen aus Kundenprojekten und Feedback von Anwendern. Diese werden Sie hoffentlich dabei unterstützen, die beste Strategie zum Einsatz von QF-Test in Ihrem eigenen Projekt zu finden.
bullet 
Reports wurden umstrukturiert und weiter ausgebaut. 'Check' Knoten haben nun ein optionales 'Name' Attribut für ihre Darstellung im Report. Zudem wurde die Performance der Report-Generierung drastisch verbessert und ihr Speicherverbrauch reduziert.
bullet 
Die Baumdarstellung in Protokollen zeigt nun expandierte Werte anstelle von Variablen. Dies kann über das Menü »Ansicht« eingestellt werden.
bullet 
Protokolle werden nun noch effizienter kompaktifiziert und enthalten spezielle Einträge als Platzhalter für Knoten, die dabei entfernt wurden.
bullet 
Unterstützung für das Eclipse Graphical Editing Framework (GEF) ist nun standardmäßig aktiviert. Sie funktioniert nun auch mit mehreren GEF Editoren gleichzeitig.
bullet 
Die neue Prozedur qfs.web.input.fileUpload in der Standardbibliothek qfs.qft unterstützt INPUT:FILE Knoten in den verschiedenen Browser-Varianten.
bullet 
Die TestLink Integration wurde vereinfacht.
bullet 
Bei Swing und SWT Tabellen und mehrspaltigen Bäumen können nun ganze Zeilen auf einmal geprüft werden.
bullet 
ExtraFeatureResolver können nun auch für SWT und Swing verwendet werden.
bullet 
Die Standardbibliothek qfs.qft enthält nun Prozeduren auf Basis des autowin Moduls. Mit diesen kann unter Windows auf Existenz eines Fensters geprüft und dieses geschlossen werden.
bullet 
Auf die Run-ID des aktuellen Testlaufs kann nun mittels ${qftest:runid} zugegriffen werden.
bullet 
Spezielle Variablen und Properties vom Typ Gruppe:Name können nun für 'Charakteristische Variablen' verwendet werden.
bullet 
Bei Knoten wie 'Testschritt' oder 'Testfallsatz' mit mehreren Reitern für Variablendefinitionen, insbesondere 'Testschritt', wird nun die Zahl der gebundenen Variablen in den Reitern dargestellt, so dass diese sehr viel leichter wiederzufinden sind.

Beseitigte Bugs:

bullet 
Mehrere Ursachen für Abstürze im IE wurden beseitigt.
bullet 
Warten auf Abwesenheit funktioniert nun korrekt mit unsichtbaren Knoten.
bullet 
QF-Test blockiert nicht mehr so leicht, wenn ein SUT sehr viele Ausgaben erzeugt und die JTextArea im Terminal mit der Anzeige nicht hinterher kommt.
bullet 
Der interne Variablenstapel von QF-Test konnte in einigen speziellen Fällen durcheinander geraten.
bullet 
Bei der Aufnahme von Prozeduren werden '_' Zeichen in Package- oder Klassennamen nun korrekt behandelt.

Version 3.1.3 - 1. Dezember 2009

Neue Features:

bullet 
Der neue 'Testschritt' Knoten dient zur weiteren Strukturierung und Dokumentation von Tests unterhalb von 'Testfall' Knoten. 'Testschritte' werden im Report einzeln aufgeführt, sofern dies nicht mittels -report.teststeps verhindert wird. Ein ähnlicher Effekt kann durch Markieren von beliebigen Knoten mit dem Doctag @teststep erzielt werden, dem optional ein Name für den Knoten folgen kann.
bullet 
Im Report können nun auch Checks (standardmäßig aus) und Warnungen (mit Ausnahme von Warnungen zur Wiedererkennung von Komponenten, standardmäßig an) integriert in die Testschritte aufgelistet werden. Außerdem werden Icons für Knoten dargestellt. Die entsprechenden Einstellungen können mittels -report.checks, -report.warnings und -report.nodeicons im Batchmodus vorgenommen bzw. die jeweiligen Optionen im Dialog zur interaktiven Erstellung ausgewählt werden.
bullet 
In der Workbench-Ansicht gibt es nun ein Kontextmenü für die Testsuite-Reiter.
bullet 
Alle 'Bemerkung' Attribute können nun analog zu Skripten in einem externen Editor bearbeitet werden.
bullet 
Im Protokoll-Fenster gibt es neue Buttons in der Werkzeugleiste zur Navigation zum nächsten bzw. vorhergehenden Fehler oder Warnung.
bullet 
Die inkrementelle Suche scrollt bei Treffern nun intelligenter. Zudem kann das durchsuchte Textfeld nun über die Tasten [Hoch], [Runter], [Bild hoch] und [Bild runter] gescrollt werden.
bullet 
'Abhängigkeiten' können nun optional in einem Namensraum aufgelöst werden, so dass verschiedene Sätze von Abhängigkeiten für unabhängige Teile eines Tests verwendet werden können, ohne dass die Abhängigkeiten einander in die Quere kommen. Weitere Informationen finden Sie beim Attribut 'Namensraum für Abhängigkeiten'.

Beseitigte Bugs:

bullet 
Durch die verwendete JIDE Bibliothek funktioniert die neue Workbench-Ansicht nicht mit JDK 1.4. Sie wird nun beim Start von QF-Test mit einem 1.4 JDK automatisch deaktiviert.
bullet 
Verschiedene Exceptions, die durch die neue Workbench-Ansicht und die Dialoge mit den Mehrfach-Ergebnissen verursacht wurden, sind nun beseitigt.
bullet 
Text Checks für das SWT Group Widget fehlten.
bullet 
Das automatische Scrollen von Webseiten für Abbild Checks und die Wiedergabe von harten Events funktioniert nun korrekt.
bullet 
Das Untermenü für Marken im Popup Menü konnte manchmal leer sein.

Patch 3.1.2-p1 - 20. Oktober 2009

Beseitigte Bugs:

bullet 
In der neuen Workbench-Ansicht konnte QF-Test bezüglich der aktuell geladenen Testsuites durcheinander kommen und dadurch eine Testsuite mehrfach laden, was zu verwirrendem Verhalten und teilweise auch Exceptions führen konnte.
bullet 
Der neue Mechanismus zur SWT-Instrumentierung behandelte immer nur ein Plugin, so dass bei einer Eclipse-basierten Anwendung mit SWT Plugins für mehrere Plattformen das Plugin für die aktuelle Plattform eventuell unverändert blieb.
bullet 
Ein Aufruf von stopRun konnte den gemeinsamen RunContext im QF-Test Daemon unbrauchbar machen.

Version 3.1.2 - 15. Oktober 2009

Neue Features:

bullet 
Es wird nun die aktuelle Eclipse/SWT Version 3.5.1 unterstützt.
bullet 
Wir haben begonnen, spezielle Unterstützung für verschiedene AJAX Web Toolkits zu implementieren, darunter Ext GWT, Ext JS, GWT, qooxdoo und RAP. Statt einer tief verschachtelten Hierarchie von <DIV> Knoten arbeitet QF-Test nun mit dem eigentlichen "Rich Interface" aus Buttons, Labels, Trees, etc. Für Informationen, wie Sie dieses Feature im aktuellen Stadium aktivieren, wenden Sie sich bitte an QFS.
bullet 
QF-Test unterstützt nun die Interaktion mit dem Open Source Test-Management Werkzeug TestLink.
bullet 
QF-Test startet nun standardmäßig in der neuen "Workbench-Ansicht", in der alle offenen Testsuites als Reiter dargestellt werden. Dieses Feature befindet sich noch in der Entwicklung. Wenn es Probleme verursachen sollte oder wenn Sie die alte Sichtweise mit mehreren Fenstern bevorzugen, können Sie über das »Ansicht« Menü darauf zurückschalten.
bullet 
Die neue Funktion »Referenzen analysieren« im Kontextmenü eines Knotens dient zur statischen Validierung einer Testsuite. Sie kann die Existenz der Zielknoten von 'Prozeduraufrufen', 'Testaufrufe', 'Bezüge auf Abhängigkeiten' und von Verweisen auf 'Komponenten' überprüfen.
bullet 
Operationen, die nach mehreren Knoten suchen oder mehrere Knoten verändern, zeigen nun als Ergebnis einen Dialog mit einer Liste dieser Knoten an. Sie können von dort direkt zu diesen Knoten springen oder Marken für bestimmte oder alle diese Knoten setzen.
bullet 
Knoten in einer Testsuite können nun mit verschiedenfarbigen Marken versehen werden, um diese leichter zu finden und schnell navigieren zu können. Marken können entweder individuell über das Menü »Bearbeiten«-»Marken« oder das Kontextmenü gesetzt werden, oder von einem Dialog mit einer Knoten-Ergebnisliste.
bullet 
Alle Textfelder, Terminals etc. in QF-Test Oberfläche können nun lokal durchsucht werden. Drücken Sie hierzu [Strg-F] während das Feld den Tastaturfokus besitzt.
bullet 
Der neue Komponenteninspektor ermittelt Felder und Methoden von Swing oder SWT Komponenten sowie Javascript Properties von DOM Knoten in einem Web-Client und stellt diese übersichtlich dar.
bullet 
Nachdem Sie eine Sequenz aufgenommen und in eine 'Prozedur' transformiert haben, können Sie QF-Test durch Auswahl von »Knoten parameterisieren« in deren Kontextmenü anweisen, automatisch Parameter für die Prozedur aus den enthaltenen Knoten zu extrahieren.
bullet 
Die Eclipse/SWT Instrumentierung mittels der 'Prozedur' qfs.qft#qfs.swt.instrument.setup baut nun ein instrumentiertes Plugin aus dem Original und den QF-Test spezifischen Beigaben. Damit ist es nun möglich, auch selbst erstellte SWT Plugins oder solche von inoffiziellen Eclipse Versionen zu instrumentieren, für die QF-Test kein exakt passendes Plugin mitbringt.
bullet 
Event Knoten können nun in einen 'Warten auf Komponente' Knoten transformiert werden.
bullet 
Das Tastaturkürzel für die 'Wiederherstellen' Operation wurde von [Strg-R] zu [Strg-Y] umdefiniert. In den letzten Jahren hat sich letzteres als allgemeiner Standard etabliert.
bullet 
Die Warnung bezüglich verschachtelter Ausführung von 'Testfall' Knoten kann nun über die Option "Warnung bei verschachtelten Testfällen ausgeben" unterdrückt werden.
bullet 
Wenn eine Webseite gescrollt werden muss, um einen harten Event oder einen Abbild-Check ausführen zu können, erledigt QF-Test das nun selbst via Javascript und verlässt sich nicht mehr auf die internen Mechanismen der Browser, welche die Darstellung komplett über den Haufen werfen können.
bullet 
Die Erkennung einer Komponente auf Basis der Geometrie kann nun verhindert werden, indem für Position und Größe im 'Komponente' Knoten ein '-' eingetragen wird.
bullet 
Es ist jetzt möglich, nur eines der Attribute 'Insgesamt' oder 'Index' in einem 'Komponente' Knoten anzugeben und das andere zu ignorieren.

Beseitigte Bugs:

bullet 
Beim Ersetzen eines Regulären Ausdrucks mit einem leeren String über den Ersetzen-Dialog kam es zu einer Exception.
bullet 
Die Funktion, um 'Prozeduraufrufe' oder 'Bezüge auf Abhängigkeiten' relativ zu machen, funktionierte noch nicht zuverlässig.
bullet 
Beim Verschieben von mehreren 'Prozeduren' konnte die automatische Korrektur der 'Prozeduraufrufe' in speziellen Fällen scheitern.
bullet 
Die Aufnahme von Prozeduren funktioniert nun auch für abgeleitete Klassen mit speziellem ClassLoader korrekt.
bullet 
Bei der Erstellung von Reports können Warnungen durch Angabe von -report.warnings=false im Batchmodus oder die entsprechende Option im interaktiven Dialog komplett unterdrückt werden.
bullet 
Die Aufnahme eines Klicks auf eine editierbare Zelle einer SWT Tabelle konnte dazu führen, dass der Editor für die Zelle in der falschen Tabellenzeile aktiviert wurde.
bullet 
'Index auslesen' Knoten waren für SWT nicht implementiert.
bullet 
Das Entfernen oder Markieren von ungenutzten Komponenten, Imports und andere komplexe Operationen auf Komponenten konnten fehlschlagen, wenn sich in der Testsuite ein 'Datentabelle' Knoten ohne Spalten oder mit leeren Zellen befand.

Zusatz für Eclipse/SWT 3.5.1 - 30. September, 2009

Neue Features:

bullet 
Dieser Zusatz bietet Unterstützung für Eclipse/SWT 3.5.1 "Galileo".

Version 3.1.1 - 28. July 2009

Inkompatible Änderungen:

bullet 
Die unten beschriebenen Änderungen am Checkmechanismus sind vollständig rückwärtskompatibel. Allerdings kann eine Testsuite, die mit QF-Test 3.1.1 gespeichert wurde, mit älteren Versionen nicht mehr korrekt ausgeführt werden - mit Ausnahme von QF-Test Version 3.0.3, die explizit bidirektionale Kompatibilität für dieses Feature bietet. Wenn Sie QF-Test 3.1.1 einführen, können Sie also parallel ohne Probleme mit Version 3.0.3 arbeiten, sollten aber ältere Versionen wie 3.1.0 oder 3.0.2 nicht mehr verwenden.

Neue Features:

bullet 
Der Übergang auf den neuen Checkmechanismus ist nun abgeschlossen. Das Erstellen eigener Checker ist vollständig dokumentiert und diese können nun für alle Check-Datentypen erstellt werden. Alle 'Check' Knoten haben nun ein 'Name des Check-Typs' Attribut und die alten 'Check editable', 'Check enabled' und 'Check selected' Knoten wurden durch 'Check Boolean' Knoten mit entsprechendem 'Name des Check-Typs' ersetzt.
bullet 
Es können nun Lesezeichen für Testsuiten, Protokolle und einzelne Knoten in einer Testsuite definiert werden, so dass diese direkt über das neue Untermenü »Datei«-»Lesezeichen« angesprungen werden können.
bullet 
Der neue ClassNameResolver ist zwar auch für SWT und Swing Anwendungen verwendbar, bedeutet aber vor allem einen wichtigen Meilenstein für das Testen von AJAX basierten Webanwendungen. Mit seiner Hilfe und der neuen pseudo Klassenhierarchie für DOM Knoten kann eine tief verschachtelte Hierarchie von DIV Knoten in eine prägnante Hierarchie mit ausdrucksstarken Klassennamen verwandelt werden, welche die Komponentenerkennung drastisch verbessern.
bullet 
'Prozeduren' können nun über das Untermenü »Knoten parameterisieren« im Popupmenü des 'Prozedur' Knotens automatisch parametrisiert werden. Dieses Feature ist gerade in Arbeit und benötigt noch einiges an Feinabstimmung, wir hoffen daher auf Feedback.
bullet 
Beim Erstellen von testdoc Dokumentation ist es nun möglich, 'Testaufruf' Knoten zu verfolgen und die referenzierten Ziele, also 'Testfall', 'Testfallsatz' oder ganze Testsuite, so eizubinden, als wären sie Teil der Ausgangssuite. Aktivieren lässt sich dies über das Kommandozeilenargument -testdoc.followcalls im Batchmodus oder die entsprechende Option im Dialog bei interaktiver Generierung.
bullet 
Es werden nun einige zusätzlich Varianten zum Konvertieren, Ein- und Auspacken von Knoten angeboten.

Beseitigte Bugs:

bullet 
Es wurden einige Probleme mit geteilten Protokollen beseitigt. Einträge konnten in Kombination mit kompakten Protokollen verloren gehen, wenn ein geteiltes Protokoll nicht als ZIP Datei gespeichert wurde oder wenn geteilte Protokolle deaktiviert, das Attribut 'Name für separates Protokoll' aber definiert waren.
bullet 
DaemonTestRunListener funktionierten im asynchronen Modus nicht korrekt.
bullet 
Bei der Reportgenerierung wurden Abbilder für fehlgeschlagene 'Check Elemente' immer gespeichert, selbst wenn der Check nur zur Ablaufsteuerung diente und es sich nicht um einen eigentlichen Fehler handelte.
bullet 
Bei Verwendung der neuen regulären Ausdrücke von Java konnten im 'Ersetzen' Dialog spezielle Ersetzungen auf Basis von Regexps nicht ausgeführt werden.
bullet 
Bei der Bestimmung der Eindeutigkeit von "id" Attributen zur Verwendung als Name war QF-Test etwas zu strikt, so dass nicht alle potentiellen Namen zugewiesen wurden.
bullet 
Die JDK Instrumentierung funktioniert nun auch für ein OpenJDK Verzeichnis.
bullet 
Beim Warten auf ein neues Dokument wurde das Attribut 'Name des Browser-Fensters' nicht korrekt berücksichtigt.
bullet 
Beim Warten auf das Ende eines Downloads wurde immer die gesamte Wartezeit verbraucht.
bullet 
In sehr seltenen Fällen konnte das Abspielen einer Texteingabe eine SWT Anwendung unter Linux zum Absturz bringen.
bullet 
Änderungen an Optionen mittels rc.setOption() wurden im SUT wieder zurückgesetzt, wenn Optionen interaktiv über den Dialog geändert wurden.
bullet 
Die Wiedergabe von Events für SWT MenuItems war mit Gtk 2.4 unter RedHat Enterprise Linux 4 nicht zuverlässig.
bullet 
Die Jython Module ktable und gef für die entsprechenden SWT Komponenten waren nicht korrekt an die neuen ItemResolver und Checker Mechanismen angepasst.
bullet 
QF-Test erkennt nun korrekt die modalste SWT Shell, wenn mehrere modale Shells gleichzeitig geöffnet sind.

Patch 3.1.0-p1 - 25. Juni 2009

Neue Features:

bullet 
Der Hauptgrund für diese Patch-Version ist die Unterstützung für Eclipse 3.5 "Galileo".

Version 3.1.0 - 19. Mai 2009

Inkompatible Änderungen:

bullet 
QF-Test verwendet nun standard Java reguläre Ausdrücke, die wesentlich mächtiger sind als das alte GNU Regexp Package. Ein grundlegender Unterschied ist, dass '{' und '}' Sonderzeichen für Java Regexps sind, die eventuell mit '\' geschützt werden müssen. Notfalls können Sie über die Option "Alte GNU Regexps verwenden (vor QF-Test Version 3.1)" auf das GNU Regexp Package zurückschalten.
bullet 
Im Gegensatz zu Mozilla behandelt der Internet Explorer eine lokale Navigation zu einem Anker auf der aktuellen Seite wie eine normale Navigation, so dass bisher auch dafür ein 'Warten auf Laden des Dokuments' Knoten aufgenommen wurde, dessen Wiedergabe für Mozilla fehlschlägt. QF-Test behandelt diese Situation nun einheitlich, indem es die zusätzliche IE Navigation ignoriert. Folglich schlagen 'Warten auf Laden des Dokuments' Knoten für lokale Navigation nun fehl und müssen aus Ihren Tests entfernt werden.

Neue Features:

bullet 
Der von QF-Test für das Webtesten eingebettete Browser unterstützt mit JDK 1.6.0_10 und höher seinerseits die Einbettung von Java Applets, so dass QF-Test nun auch die Interaktion einer Webanwendung mit dem darin enthaltenen Applet testen kann.
bullet 
Viele der Optionen von QF-Test, insbesondere solche mit Einfluss auf die Testausführung, können nun zur Laufzeit über die Runcontext Methode rc.setOption gesetzt werden.
bullet 
Beim Verschieben von 'Prozedur', 'Abhängigkeit' oder 'Testfall' Knoten können Referenzen auf diese Knoten nun automatisch angepasst werden. Ebenso wird verfahren, wenn die Namen solcher Knoten, bzw. die 'Id' von 'Komponente' Knoten, über den Ersetzen Dialog modifiziert werden. Als zusätzliches Feature wurden die spezielle Variablengruppe ${id:...} und die Runcontext Methode rc.id eingeführt, über die beliebiger Text als Definition einer Komponenten-Id gekennzeichnet werden kann, welche bei Änderungen der Komponente automatisch aktualisiert wird.
bullet 
'Prozeduraufrufe' aus einer 'Prozedur' zu einer anderen 'Prozedur' in der gleichen 'Package' Hierarchie können nun auch relative Prozedurnamen verwenden. Zudem können 'Prozeduren' und 'Packages' nun durch Voranstellen eines '_' Zeichens als lokal für Ihre Testsuite markiert werden.
bullet 
Der Auswahldialog für 'Prozedur', 'Abhängigkeit' oder 'Testfall' Knoten zeigt nun auch die Bemerkung des ausgewählten Knotens. Zudem können nun mehrere Knoten selektiert werden, um so mehrere Aufrufe auf einmal einzufügen.
bullet 
Ein 'Prozeduraufruf' für eine 'Prozedur' kann nun auch erstellt werden, indem der 'Prozedur' Knoten kopiert und an einer Stelle eingefügt wird, an der 'Prozeduren' nicht erlaubt sind, also praktisch überall dort, wo ein 'Prozeduraufruf' stehen kann. Auch Drag&Drop wird mit dem selben Effekt unterstützt.
bullet 
Es ist nun möglich, direkt mit der Javascript Engine des Browsers zu interagieren und dort beliebige Skripte über die Methoden DomNode.toJs, DomNode.evalJs und DocumentNode.evalJs auszuführen.
bullet 
Nach Auftreten eines Fehlers oder einer Exception enthält das Protokoll nun auch einen Stacktrace Knoten, der alle Knoten auf dem Ausführungsstapel inklusive der von ihnen gebundenen Variablen anzeigt, vergleichbar mit der Variablen-Darstellung im Debugger-Fenster.
bullet 
Es gibt ein neues API für verschiedene Arten von Resolvern und Checkern, darunter ein ItemResolver Interface zur Implementierung eigener Unterelemente von custom Komponenten und ein Checker Interface für eigene Checks, die genauso aufgenommen und wiedergegeben werden können, wie die standard Checks von QF-Test.
bullet 
Das neue TestRunListener API dient zur Überwachung von Testläufen auf Skript-Ebene. Das analoge DaemonTestRunLister Interface erweitert diese Möglichkeit auf QF-Test's Daemon API.
bullet 
Die Unterstützung für Eclipse/SWT wurde auf den Stand des aktuellen Eclipse Milestone 3.5M7 gebracht.
bullet 
Die Runcontext Methode rc.callProcedure funktioniert nun auch - mit den üblichen Einschränkungen - aus einem 'SUT Skript' für eine Webanwendung.
bullet 
Die Ausführung eines 'Testfalls' oder 'Testfallsatzes' kann nun mittels der Runcontext Methoden rc.skipTestCase, rc.skipTestSet, rc.stopTestCase und rc.stopTestSet übersprungen oder abgebrochen werden, z.B. um Zeit zu sparen und überflüssige Fehlermeldungen zu verhindern, wenn eine Abhängigkeit nicht aufgelöst werden kann.
bullet 
Der Name des aktuell ausgeführten 'Testfalls' kann nun über die speziellen Variablen ${qftest:testcase.name}, ${qftest:testcase.qname} und ${qftest:testcase.reportname} ermittelt werden.
bullet 
Über die neuen Methoden setProperty und getProperty der Klasse Node aus QF-Test's pseudo DOM API für Webanwendungen können nun beliebige Daten mit einem DOM Knoten assoziiert werden, ohne dabei die Webanwendung selbst zu beeinflussen.
bullet 
Das neue Kommandozeilenargument -ping für qftest -batch -calldaemon hilft bei der Überprüfung ob ein QF-Test Daemon läuft und auf Anfragen reagiert.

Beseitigte Bugs:

bullet 
Für SUTs unter Mac OS X wird die Benutzung der Bildschirm-Menüleiste unterdrückt, um sauberes Aufnehmen/Wiedergeben zu erlauben.
bullet 
Das Aktivieren einer Engine-Lizenz im Optionen-Dialog funktioniert nun korrekt.
bullet 
Bei der Aufnahme von 'Prozeduren' wird nun immer ein neues 'Package' erstellt anstatt die 'Prozeduren' in ein eventuell bestehendes 'Package' namens "procbuilder" zu integrieren.

Version 3.0.3 - 28. Juli 2009

Neue Features:

bullet 
Die Behandlung von 'Check' Knoten ist in beide Richtungen kompatibel mit QF-Test Version 3.1.1, in welcher Checks gründlich überarbeitet wurden. QF-Test Version 3.0.3 kann Testsuiten laden, ausführen und speichern, die mit Version 3.1.1 erstellt wurden, ohne dass dabei Informationen verloren gehen.

Beseitigte Bugs:

bullet 
Es wurden einige Probleme mit geteilten Protokollen beseitigt. Einträge konnten in Kombination mit kompakten Protokollen verloren gehen, wenn ein geteiltes Protokoll nicht als ZIP Datei gespeichert wurde oder wenn geteilte Protokolle deaktiviert, das Attribut 'Name für separates Protokoll' aber definiert waren.
bullet 
Bei der Bestimmung der Eindeutigkeit von "id" Attributen zur Verwendung als Name war QF-Test etwas zu strikt, so dass nicht alle potentiellen Namen zugewiesen wurden.
bullet 
Die JDK Instrumentierung funktioniert nun auch für ein OpenJDK Verzeichnis.
bullet 
Beim Warten auf ein neues Dokument wurde das Attribut 'Name des Browser-Fensters' nicht korrekt berücksichtigt.
bullet 
Beim Warten auf das Ende eines Downloads wurde immer die gesamte Wartezeit verbraucht.
bullet 
Eine Lizenz für eine Engine lässt sich nun korrekt im Optionen Dialog aktivieren.
bullet 
In sehr seltenen Fällen konnte das Abspielen einer Texteingabe eine SWT Anwendung unter Linux zum Absturz bringen.
bullet 
Für SUTs unter Mac OS X wird die Benutzung der Bildschirm-Menüleiste unterdrückt, um sauberes Aufnehmen/Wiedergeben zu erlauben.

Patch 3.0.2-p2 - 25. Juni 2009

Neue Features:

bullet 
Der Hauptgrund für diese Patch-Version ist die Unterstützung für Eclipse 3.5 "Galileo".

Beseitigte Bugs:

bullet 
Die Wiedergabe von Events für SWT MenuItems war mit Gtk 2.4 unter RedHat Enterprise Linux 4 nicht zuverlässig.
bullet 
QF-Test erkennt nun korrekt die modalste SWT Shell wenn mehrere modale Shells gleichzeitig geöffnet sind.

Patch 3.0.2-p1 - 14. April 2009

Beseitigte Bugs:

bullet 
In QF-Test Version 3.0.2 wurden eventuell vorhandene harte TAB Zeichen in einem Jython oder Groovy Skript schon bei der Anzeige durch Leerzeichen ersetzt, so dass ein solcher Knoten sofort als modifiziert eingestuft wurde. Diese Änderung wurde nun zurückgenommen.
bullet 
Mit JDK 1.6 wurden einige von QF-Test's Dialogen nicht mit der korrekten Größe dargestellt.

Version 3.0.2 - 27. März 2009

Neue Features:

bullet 
Es werden nun auch die Eclipse/SWT Versionen 3.5M6 und 3.4.2 unterstützt.
bullet 
Die Klasse DaemonRunContext aus QF-Test's Daemon API besitzt nun die neue Methode callProcedure. Diese und die bestehende Methode runTest unterstützen nun auch die direkte Übergabe von Parametern.

Beseitigte Bugs:

bullet 
'Warten auf Laden des Dokuments' Knoten für Web-Clients funktionierten im Fall mehrerer geöffneter Browserfenster nicht zuverlässig.
bullet 
Die Überprüfung des enabled/disabled Zustands einer Komponente findet nun auch bei Webanwendungen statt.
bullet 
Für Web-Clients wird nun auch die Aufnahme und Wiedergabe von MOVED und SIZED Events unterstützt.
bullet 
QF-Test führt jetzt regelmäßig eine Garbage Collection durch, um zu verhindern, dass der Speicher im sogenannten PermGen Space knapp wird, einer speziellen Region, die vielen Java Anwendungen Probleme bereitet. Für das SUT kann diese Garbage Collection mittels der Option 'Automatisch Garbage Collection im SUT durchführen' unterdrückt werden.
bullet 
Das Verwerfen und neu Erstellen eines SWT Displays wird nun korrekt behandelt.
bullet 
Abgeleitete SWT Widgets, die als anonyme innere Klasse implementiert sind, wurden in speziellen Fällen nicht richtig erkannt, was zu einer ComponentNotFoundException führen konnte.
bullet 
Für Check Knoten mit langer Wartezeit wird die Überprüfung auf Deadlocks nun entsprechend angepasst.
bullet 
Die Testsuite zur Demonstration der Anbindung an die Imbus TestBench wurde aktualisiert, an die akutelle TestBench Version angepasst und verarbeitet geteilte Protokolle nun korrekt.

Version 3.0.1 - 23. Januar 2009

Neue Features:

bullet 
Der Jython und Groovy Runcontext rc bietet nun die Methoden getBool, getInt, getNum und getString zum einfacheren Auslesen von typisierten Variablen in Skripten.
bullet 
Proxy-Einstellungen für eine Web-Anwendung können nun direkt im Schnellstart-Assistenten oder über die Prozedur qfs.web.browser.settings.setProxy in der Standardbibliothek qfs.qft angegeben werden.
bullet 
Die Template-Datei für die automatische Erstellung von Prozeduren wurde um einen Eintrag für Swing JInternalFrame Komponenten ergänzt.

Beseitigte Bugs:

bullet 
Webtesten mit Mozilla unter Linux ist nicht mehr auf JDK 1.4 beschränkt.
bullet 
Die Funktion zum Aktualisieren von Komponenten konnte bei Webseiten mit tief verschachtelten Tabellen zu doppelt vergebenen IDs von Komponenten führen.
bullet 
Das Links-Nach-Rechts-Binden von Werten in 'Datentabelle' und anderen 'Daten' Knoten funktioniert nun korrekt.
bullet 
SQL-Abfragen in 'Database' Knoten funktionierten nicht mit Oracle Datenbanken, da sie von QF-Test automatisch mit einem ';' Zeichen abgeschlossen wurden. Dieses geschieht nun nicht mehr, wenn Ihre Datenbank einen solchen Abschluss von Abfragen benötigt, müssen Sie das ';' Zeichen selbst angeben.
bullet 
Die Prozedur qfs.swt.instrument.setup verwendet nun - sofern verfügbar - immer die exakt passende Version des SWT Plugins zur Instrumentierung. Dies ist wichtig für SWT 3.4, bei dem die Versionen 3.4.0 und 3.4.1 wechselseitig inkompatibel sind.
bullet 
Beim Aufnehmen von Prozeduren konnte ein '$' Zeichen in einem Feld des SUT zu einer Exception führen.
bullet 
Das Laden von Groovy Klassen und das Parsen von Groovy Skripten wurde beschleunigt, für manche Fälle - speziell Applets - drastisch.
bullet 
Eine gefangene Exception unterhalb eines 'Finally' Knotens in einem 'Try' Knoten konnte den Fehlerstatus einer vorher in einem 'Catch' Knoten gefangenen Exception durcheinander bringen.
bullet 
Die Demo-Testsuite swt_addressbook.qft basierte noch auf SWT 3.1, welches nicht mehr mit QF-Test ausgeliefert wird. Diese Suite wurde auf SWT 3.4 umgestellt.

Version 3.0.0 - 5. Dezember 2008

Wichtige neue Features:

bullet 
Plattform- und browserübergreifendes Webtesten mit Unterstützung für web2.0/AJAX.
bullet 
Anbindung an HP/Mercury Quality Center und Imbus TestBench.
bullet 
Groovy als zweite Skriptsprache.
bullet 
Neue Jython Version 2.2.1.
bullet 
Verbesserter Jython und Groovy Skripteditor mit Syntaxhervorhebung.
bullet 
Automatische Erstellung von Basisprozeduren.
bullet 
Erweiterte und vereinheitlichte Funktionalität von 'Check...' und 'Warten auf...' Knoten.
bullet 
Direkte Unterstützung für negierte Checks.
bullet 
Geteilte Protokolle ermöglichen lang laufende Tests ohne Speicherprobleme.
bullet 
64-Bit Unterstützung für SWT unter Windows und Linux.
bullet 
Erweiterungen und ein externer Treiber für das Daemon API.
bullet 
Neues Konzept: "Erwarteter Fehler" für 'Testfall' Knoten.
bullet 
Koordination und Dokumentation von manuellen Tests.
bullet 
Erweitertes Undo.
bullet 
Immediate und Lazy Binding von Variablen.
bullet 
Image API zum Erstellen und Speichern von Screenshots.
bullet 
Verschlüsselung von Text zur Eingabe in Kennwort-Felder.
bullet 
Rekursives Sortieren und Transformieren von Knoten.
bullet 
Verbesserte Suche mit Hervorhebung der Ergebnisse.
bullet 
Erweiterungen für die Standardbibliothek qfs.qft.
bullet 
Neue Kapitel im Tutorial für weiterführende Features.

Der Produktzyklus einer QF-Test Version

Es gibt verschiedene Möglichkeiten, den Produktzyklus einer Software wie QF-Test zu gestalten, die sich bei vielen Anwendern im produktiven Einsatz befindet, während sie kontinuierlich gepflegt, verbessert und erweitert wird. In der Vergangenheit wurden QF-Test Versionen unterschieden in "Entwicklungsversionen" (mit einer ungeraden mittleren Nummer) und "Produktiv-Versionen" (mit einer geraden mittleren Nummer). Dieser Ansatz war schwer verständlich und führte gelegentlich zu Missverständnissen. Beginnend mit QF-Test Version 3.4 ist der Produktzyklus wie folgt:

Meilensteine

Die Entwicklung steht niemals still. Während die aktuelle Version noch gepflegt wird, entsteht bereits eine neue Version. Wenn eine gewisse Zahl neuer Features reif ist, wird der erste Meilenstein freigegeben, zum Beispiel 3.4M1. Weitere Meilenstein Releases wie 3.4M2 können folgen.

Die in Entwicklung befindliche Version von QF-Test ist die am meisten getestete und somit generell die stabilste. Daher ist ein Meilenstein nicht eine Betaversion der Kategorie "Benutzen auf eigene Gefahr", sondern eine vollwertige Release. Der wesentliche Unterschied zwischen einem Meilenstein und der "Punkt-Null" Release ist, dass ein Meilenstein noch nicht alle geplanten Funktionen enthält. Folglich markiert die Freigabe des ersten Meilensteins den Start einer neuen Medium oder Major Version hinsichtlich Pflege- und Upgradekonditionen.

Ein besonderes Feature von Meilensteinen ist, dass diese für eine begrenzte Zeit auch mit Lizenzen der Vorgängerversion genutzt werden können, so dass auch Anwender ohne Pflegevertrag die Chance haben, die neue Version unverbindlich auszuprobieren.

"Punkt-Null" und Wartungsversionen

Wenn der volle Funktionsumfang einer Version erreicht ist, wird eine "Punkt-Null" Version freigegeben, in unserem Beispiel 3.4.0. Da die Version in Form von Meilensteinen bereits einige Zeit verfügbar war, ist eine "Punkt-Null" Version weitgehend ausgereift und obige Argumentation im Bezug auf Testumfang und Stabilität der aktuellsten Version greift ebenfalls.

Wartungsversionen wie 3.4.1 erscheinen in unregelmäßigen Abständen. Sie dienen im Wesentlichen der Fehlerbeseitigung, können gelegentlich aber auch kleinere neue Features enthalten. Im Fall schwerwiegender Fehler wird eine Wartungsversion veröffentlicht, sobald der Fehler behoben ist.

Patches

Ab und zu werden kleine, aber störende Fehler kurz nach einer Release entdeckt, die keine neue Release rechtfertigen, aber wichtig genug sind, um beseitigt zu werden. In einem solchen Fall wird eine Patchversion wie 3.4.0-p1 freigegeben, um die Änderungen interessierten Anwendern zur Verfügung zu stellen. Patches werden nur über die Mailingliste angekündigt (näheres zur QF-Test Mailingliste).

Bei der Entwicklung von neuen Features oder Problemlösungen ist es oft nötig, Feedback von Anwendern einzuholen. Zu diesem Zweck werden einzelnen Anwendern manchmal experimentelle Patches zur Verfügung gestellt. Falls diese von allgemeinem Interesse sind, werden sie auch auf der Mailingliste angekündigt.

Ein Patch ist eine sehr kleine Sammlung von Änderungen relativ zu einer bestimmten QF-Test Version. Er wird in Form eines ZIP Archivs bereitgestellt, welches über eine bestehende QF-Test Installation extrahiert wird. Es gibt immer nur eine gemeinsame ZIP Datei für alle Betriebssysteme und die Installation eines Patches verursacht deutlich weniger Aufwand als das Update zu einer neuen QF-Test Version.

Ein Patch ist immer eine temporäre Lösung. Die nächste volle Wartungsversion beinhaltet alle funktionierenden Änderungen, die seit der letzten Version als Patch freigegeben wurden.

Wir führen immer einen vollständigen Testlauf für offizielle Patches durch. Aufgrund des verkürzten Entwicklungszyklus sind Patches aber zwangsläufig nicht so gut getestet wie volle Versionen. Sollten Sie nach Installation eines Patches Probleme haben, können Sie diesen normalerweise durch Entfernen der Datei .../qftest/qftest-x.y.z/qflib/patch.jar deaktivieren. Bitte melden Sie alle Probleme mit Patches an qftest-bug@qfs.de oder an die Mailingliste.