|
|
|
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.
|
|
Version 3.4.4 - 30. Januar 2012
Neue Features:
|
|
Es werden nun die aktuellen Versionen von Firefox 9 und Firefox 10 unterstützt.
|
|
|
Es wird nun Eclipse/SWT Version 3.8M5 und experimentell auch Eclipse/SWT
Version 4.2M5 unterstützt.
|
|
|
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.
|
|
|
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.
|
|
|
Die Miniaturbilder in HTML Reports sind nun von besserer Qualität.
|
Beseitigte Bugs:
|
|
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.
|
|
|
Bei 'Check Abbild' Knoten mit speziellem Algorithmus und einer Wartezeit
wurde immer die gesamte Wartezeit ausgeschöpft, selbst wenn die Bilder sofort
übereinstimmten.
|
|
|
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.
|
|
|
Wurden Knoten mittels Drag&Drop im Baum von QF-Test verschoben, konnte der Baum in speziellen
Fällen wild durch die Gegend springen.
|
|
|
Der Versuch, den selben Knoten mit Hilfe des Ergebnisdialogs der Suche zweimal zu
entfernen,
konnte zu einer Exception führen.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
Javascript Fehler im Internet Explorer wurden im Protokoll von QF-Test nicht korrekt
wiedergegeben.
|
|
|
In speziellen Fällen konnte das initiale Laden einer Webseite fehlschlagen.
|
|
|
Das Hervorheben der selektierten Komponente im Browser funktioniert unter Linux nun
besser.
|
|
|
Webseiten mit einem Flash Element wurden unter Linux teilweise nicht korrekt angezeigt.
|
|
|
Der Dateiname, der beim Upload einer Datei unter Linux aufgezeichnet wurde, enthielt
fälschlicherweise das Windows Trennzeichen für Dateipfade '\'.
|
|
|
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:
|
|
Es werden nun die aktuellen Versionen von Firefox 8 und Firefox 9 unterstützt.
|
|
|
Der 'Excel Datei' Knoten kann nun auch .xslx Dateien im Excel
2010 Format lesen.
|
|
|
Bei einigen Algorithmen für Bildvergleiche wurde die Performanz deutlich verbessert.
|
|
|
Es ist nun möglich, den aktuellen Wert einer Option per Skript über die Methode
rc.getOption zu bestimmen.
|
Beseitigte Bugs:
|
|
Beim Wechsel von Testsuiten durch Klick auf den Reiter für eine Suite wurde der
Tastaturfokus nicht korrekt wieder hergestellt.
|
|
|
Das Tastenkürzel [Strg-D] zum Setzen von Lesezeichen
funktionierte nicht.
|
|
|
Das Springen von einem Knoten im Debuggerfenster zum selben Knoten in der Testsuite
funktioniert nun wieder.
|
|
|
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:
|
|
Firefox 6 wird nun voll, Firefox 7 experimentell unterstützt.
|
|
|
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.
|
|
|
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.
|
|
|
QF-Test unterstützt nun Aufnahme und Wiedergabe von "expand" und "collapse" Events für SWT
ExpandItems.
|
Beseitigte Bugs:
|
|
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.
|
|
|
Die direkte Ausführung von Javascript Code funktioniert nun trotz stärkerer
Sicherheitsüberprüfungen auch im Internet Explorer 9.
|
|
|
Der AJAX Resolver für GWT hat nun Version 1.4.0 mit verbesserter Filterung von
<DIV> Knoten aus der Komponentenhierarchie.
|
|
|
Das Öffnen eines modalen Popup-Fensters konnte Firefox 6 unter Windows zum Absturz
bringen.
|
|
|
Doppelklicks werden im Internet Explorer nun korrekt aufgenommen.
|
|
|
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.
|
|
|
Die Ausgabe von Unicode Text in Jython konnte im Batchmodus zu Problemen führen.
|
|
|
Der Inhalt von 'Datentabelle' Knoten fehlte im Protokoll.
|
|
|
Ein 'Warten auf Client' Knoten mit sehr kurzer 'Wartezeit' warf keine
ClientNotConnectedException, wenn er als Einzelschritt im Debugger ausgeführt
wurde.
|
|
|
Der QF-Test Daemon erzeugte beim Start eines entfernten SUT Prozesses für die Prozedur
qfs.daemon.startRemoteSUT Threads, die nicht korrekt beendet wurden.
|
|
|
Beim Übernehmen von fehlgeschlagenen Abbild-Checks aus dem Protokoll wurde die Größe des
Abbilds nicht in allen Fällen korrekt übernommen.
|
|
|
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:
|
|
Firefox 5 wird nun voll, Firefox 6 experimentell unterstützt.
|
|
|
Die SWT Unterstützung wurde für Eclipse 3.7 Indigo aktualisiert.
|
|
|
Groovy wurde zu Version 1.7.10 aktualisiert.
|
|
|
Fehlermeldungen von Groovy Skripten werden nun mit vernünftigem Kontext und
Zeilennummern angegeben.
|
|
|
QF-Test erkennt nun auch Unterkomponenten von abgeleiteten SWT Komponenten, die ihre Kinder
durch Überladen der Methode getChildren() mit leerem Rückgabewert
verstecken.
|
|
|
Es werden nun ExtJS Version 4 und RichFaces Version 4 unterstützt.
|
|
|
Das Attribut 'Als Regexp' von 'Fenster' und
'Komponente' Knoten kann nun als variabler Wert definiert werden.
|
|
|
Die vom Schnellstart-Assistenten für Webanwendungen erstellte Startsequenz ist nun
intelligenter aufgebaut und flexibler anpassbar.
|
|
|
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.
|
|
|
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:
|
|
Beim Startvorgang prüfte QF-Test nicht auf automatisch gespeicherte Dateien, wenn die
Testsuiten zur Wiederherstellung der letzten Sitzung geladen wurden.
|
|
|
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.
|
|
|
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.
|
|
|
Es fehlte spezielle Unterstützung für JSlider Komponenten.
|
|
|
Die spezielle Variable ${qftest:runid} lieferte nicht den korrekten Wert, wenn die Runid
im Batchmodus explizit mittels -runid <id> angegeben wurde.
|
|
|
Ein durch ein spezielles PHP Konstrukt erzwungener Download konnte den Internet Explorer
zum Absturz bringen.
|
|
|
Das Löschen des Cache für Firefox funktionierte nicht zuverlässig.
|
|
|
Beim Versuch, einen Check für ein im Internet Explorer dargestelltes XML Dokument
aufzunehmen, konnte dieser abstürzen.
|
|
|
Es ist nun auch dann möglich, Checks für Applets aufzunehmen, wenn diese in QF-Test's
Browser eingebettet sind.
|
|
|
Die Groovy Implementierung von qf.logError war nicht korrekt.
|
|
|
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.
|
|
|
QF-Test gab Ressourcen bei der Aufnahme von Bildschirmabbildern innerhalb eines Eclipse/SWT
SUT nicht korrekt frei.
|
|
|
Ein Aufruf von Display.asyncExec aus einem Timer konnte zum Absturz von
Eclipse unter Linux Gtk 64 Bit führen.
|
|
|
Die Reihenfolge von SWT.Activation Events unterschied sich bei simulierten Events
minimal von der bei manueller Interaktion mit dem SUT.
|
|
|
Ein sehr langer Suchtext konnte die Größe des Suchen und Ersetzen Dialogs über den
Haufen werfen.
|
|
|
Markierungen in Protokollen propagierten nicht über 'Externes Protokoll' Knoten hinweg.
|
|
|
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.
|
|
Jython zu Version 2.5.1 aktualisiert
|
|
|
Groovy zu Version 1.7.6 aktualisiert
|
|
|
Unterstützung für Eclipse/SWT 3.6.2 und 3.7
|
|
|
Web-Testen unterstützt Firefox 4 und 5, sowie Internet Explorer 9
|
|
|
Integration mit dem Continuous Integration Tool Hudson/Jenkins
|
|
|
Fehlertolerante Abbild-Checks
|
|
|
Verbesserte Suche
|
|
|
Iterationsbereiche für Datentreiber
|
|
|
Direkte Interaktion mit Webservern
|
|
|
Erweiterte Import-Funktionen
|
|
|
Debugger in die Workbench integriert
|
|
|
Erstellen einer Testsuite aus einem Protokoll
|
|
|
Automatisches Teilen von Protokollen und bessere Behandlung von OutOfMemoryErrors.
|
|
|
Verbesserte rückwärts/vorwärts Navigation
|
|
|
Verbesserte Pkgdoc und Testdoc Dokumentation
|
|
|
Verbesserte Abstraktion von Koordinaten für Mausevents
|
|
|
Variablen mit Defaultwerten und viele zusätzliche Spezial-Variablen
|
Patch 3.4.0-p1 - 27. Juni 201
Neue Features:
|
|
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:
|
|
Die Unterstützung für Eclipse/SWT Version 3.7 wurde aktualisiert.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
In den Ergebnis-Dialogen für Suchen/Ersetzen und andere Funktionen können die Einträge
nun gefiltert werden.
|
|
|
Markierungen können nun auch für Knoten in Protokollen gesetzt werden, so dass
mehrstufige Suchoperationen auch in Protokollen möglich sind.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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:
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
'Check Abbild' Knoten funktionieren nun auch mit Firefox 4.0 korrekt.
|
|
|
Das Sichtbarscrollen eines Elements war im IE9 und bei Spezialfällen mit tief
verschachtelter Hierarchie nicht immer möglich.
|
|
|
Im IE9 wurden Knoten nicht immer korrekt hervorgehoben und das Hervorheben konnte die
Aufnahmen von Abbild-Checks stören.
|
|
|
Browser-Einstellungen für IE9 wurden zum Teil ignoriert.
|
|
|
Ein Download, der in einem Popup-Fenster angestoßen wurde, konnte den Browser zum
Absturz bringen.
|
|
|
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.
|
|
|
Die Struktur des JUnit XML Reports ist nun zu Atlassian Confluence kompatibel.
|
|
|
In Groovy war die Methode rc.getProperties() nicht korrekt implementiert.
|
Version 3.4M2 - 10. März 2011
Neue Features:
|
|
Es werden nun Eclipse/SWT Versionen 3.6.2 und 3.7 Milestone 5 unterstützt.
|
|
|
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.
|
|
|
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.
|
|
|
Mittels der Tastaturkürzel [Alt-1] bis [Alt-9] kann direkt zum entsprechenden Testsuite-Reiter in der
Workbench-Ansicht gesprungen werden.
|
|
|
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.
|
|
|
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.
|
|
|
Die neue spezielle Variablensyntax $_{qftest:skipnode} dient zum Überspringen eines
Knotens.
|
|
|
Hyperlinks im Eclipse FormText Widget werden nun als Unterelemente angesprochen.
|
|
|
Erweiterte Abbild-Checks stehen nun auch mittels der neuen Runcontext Methode
rc.checkImageAdvanced in Skripten zur Verfügung.
|
|
|
Die verschiedenen rc.check* Methoden im Runcontext liefern nun das Ergebnis
der ausgewerteten Bedingung zurück.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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:
|
|
Beim Wechsel der Ausführung zu einem anderen Knoten im Debugger konnten die Parent/Child
Beziehungen im Protokoll verschoben werden.
|
|
|
Das Setzen und Löschen einer Option per Skript konnte den Defaultwert der Option
verändern.
|
|
|
Die Wiedergabe von Doppelklicks für SWT unter Windows wurde verbessert.
|
|
|
Einige Auswahl Events für SWT sorgen nun besser für den nötigen Fokusübergang.
|
|
|
Leerzeilen am Beginn eines SWT StyledText Widgets werden nun auch unter Linux korrekt
behandelt.
|
|
|
Fehler in verschachtelten Testfällen werden nun richtig im Report angezeigt.
|
|
|
Das Setzen der Proxy-Einstellungen funktioniert nun auch für Internet Explorer 9.
|
|
|
'Check Abbild' Knoten funktionieren nun auch mit Firefox 4 korrekt.
|
|
|
Javascript und Anmeldungs-Dialoge werden nun auch mit Firefox 4 unterstützt.
|
|
|
QF-Test zeigt nun eine Warnmeldung an, wenn Sie eine schreibgeschützte Testsuite erstmals
modifizieren.
|
|
|
Doctags für 'Abhängigkeit' Knoten werden nun korrekt in der Pkgdoc Dokumentation
angezeigt.
|
Version 3.4M1 - 3. Februar 2011
Neue Features:
|
|
Groovy wurde zu Version 1.7.6 aktualisiert.
|
|
|
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.
|
|
|
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)'.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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}.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
Über die neue Kommandozeilenoption -verbose [<level>] für die
Batchausführung mit oder ohne Daemon können Ausgaben zum Fortschritt des Testlaufs
eingestellt werden.
|
|
|
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:
|
|
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.
|
|
|
Der Aufruf von Stored Procedures in einer Datenbank konnte mit den Standard Jython
Klassen scheitern.
|
|
|
Wurde bei ausgeschaltetem Debugger ein Breakpoint getroffen, konnte die anschließende
Ausführung in Einzelschritten gelegentlich scheitern und der Test einfach weiter laufen.
|
|
|
Ein Such-Treffer beim Status eines weiteren Merkmals konnte zu einer Exception führen.
|
|
|
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.
|
|
|
Die Datei für einen 'CSV Datei' Knoten wird nun sofort nach dem Auslesen der
Daten geschlossen.
|
|
|
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:
|
|
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.
|
|
|
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:
|
|
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.
|
|
|
Groovy wurde zu Version 1.7.2 aktualisiert.
|
|
|
Es wird nun Eclipse/SWT Version 3.6.1 unterstützt.
|
|
|
Experimentelle Unterstützung für Firefox 4 und Internet Explorer 9.
|
|
|
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.
|
|
|
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.
|
|
|
Neben Komponenten können nun auch Testfälle und Prozeduren von einer Testsuite in eine
andere importiert werden.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
'Ü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.
|
|
|
Tests im Daemon können nun über die Kommandozeile mit Hilfe des neuen Arguments
-stoprun gestoppt werden.
|
|
|
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.
|
|
|
Die TestRunListener API liefert nun auch Informationen darüber, ob ein
Testlauf normal beendet wurde (mit oder ohne Exceptions), oder vorzeitig vom Anwender
abgebrochen.
|
|
|
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.
|
|
|
Die Konfigurationsdateien von QF-Test werden nun mit sortiertem Inhalt abgespeichert, was
deren Ablage in einem Versionskontrollsystems deutlich vereinfacht.
|
|
|
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.
|
|
|
Es ist nun möglich, Testsuiten aus einem Protokoll zu erstellen.
|
|
|
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:
|
|
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.
|
|
|
Unter Linux konnte QF-Test vereinzelt SWT/Eclipse Anwendungen durch Zugriff auf nicht mehr
verfügbare Combo Popups zum Absturz bringen.
|
|
|
Die Wiedergabe für Eclipse/SWT unter Linux ist nun deutlich robuster, insbesondere bei
Zugriff auf Menüs.
|
|
|
Leerzeilen am Ende von StyledText Widgets unter Linux werden nun korrekt
behandelt.
|
|
|
Die Erstellung von Reports mit vielen Bildschirmabbildern kommt nun mit sehr viel
weniger Speicher aus.
|
|
|
Downloads im Internet Explorer sollten nun zuverlässig funktionieren.
|
|
|
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.
|
|
|
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:
|
|
Es wird nun das Testen von Eclipse/SWT Version 3.6 "Helios" unterstützt.
|
|
|
Im SWT FileDialog kann nun Mehrfachselektion aufgenommen und abgespielt werden.
|
Beseitigte Bugs:
|
|
Performance bei der Wiedergabe konnte drastisch einbrechen, wenn das Home-Verzeichnis
des Anwenders auf einem Netzlaufwerk lag.
|
|
|
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.
|
|
|
Ein weiteres Performance-Problem im Zusammenhang mit sehr großen Hierarchien von Swing
Menüs wurde ebenfalls beseitigt.
|
|
|
Mehrere Sonderfälle beim Hochladen von Dateien mit dem Internet Explorer werden nun
korrekt behandelt.
|
|
|
Das Herunterladen von Dateien mit dem Internet Explorer funktioniert nun auch bei HTTP
Redirection korrekt.
|
Version 3.2.1 - 11. Mai 2010
Beseitigte Bugs:
|
|
Mit einem 1.4 JDK startete QF-Test im interaktiven Modus nur, wenn beim Start bereits eine
zu öffnende Datei angegeben wurde.
|
|
|
Web-Tests funktionieren nun auch wieder unter Windows 2000.
|
|
|
Der QF-Test Debugger zeigte für 'Prozeduraufruf' und 'Testaufruf' Knoten jeweils
zwei Einträge auf dem Variablenstapel an.
|
|
|
Es gab ein Speicherleck beim interaktiven Editieren von Testsuiten mit
'Check Abbild' Knoten für große Bilder.
|
|
|
In sehr speziellen Fällen konnten beim Import von Komponenten in ihre eigene Testsuite
Referenzen falsch angepasst werden.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
| Unterstützt Webtesten in Kombination mit Java Applets |
|
| Keine JDK Instrumentierung mehr nötig |
|
| Workbench Ansicht für eine moderne Oberfläche |
|
| 'Testschritt' Knoten für detaillierte Reports |
|
| Refactoring mit automatischem Update von Referenzen |
|
| Integration mit dem Open Source Test-Management Werkzeug TestLink |
|
| Neuer 'Best Practices' Teil im Handbuch |
|
|
Eclipse/SWT Unterstützung für die aktuellsten Versionen inklusive GEF
|
|
| Inkrementelle Suche in allen Textfeldern von QF-Test |
|
| Ergebnislisten für komplexe Operationen |
|
| Komponenteninspektor zeigt Methoden und Felder von Komponenten an |
|
| Optionen können auf Skriptebene gesetzt werden |
|
| Relative und Testsuite-lokale Prozeduren |
|
| Neue 'Check' Knoten und Checker API für eigene Checks |
|
| Statische Validierung von Referenzen |
|
| Automatische Parametrisierung von Prozeduren |
|
| Persistente Lesezeichen und nicht-persistente Markierungen |
|
|
Neue APIs: ItemResolver, Checker,
ClassNameResolver und TestRunListener
|
Version 3.2.0 - 25. März 2010
Neue Features:
|
|
Die Unterstützung für Eclipse/SWT wurde auf den Stand der aktuellen Versionen 3.5.2 und
3.6M6 gebracht.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
Zuletzt verwendete Suchausdrücke werden nun in der Anwender-Konfigurationsdatei
gespeichert.
|
|
|
'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:
|
|
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.
|
|
|
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:
|
|
Es ist nicht länger nötig, Standard JDKs und JREs zu instrumentieren, wobei eine
bereits vorhandene Instrumentierung nicht schadet.
|
|
|
Es wird nun die aktuelle Eclipse/SWT Version 3.6 unterstützt.
|
|
|
Es wird nun Firefox 3.6 unterstützt.
|
|
|
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.
|
|
|
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.
|
|
|
Die Baumdarstellung in Protokollen zeigt nun expandierte Werte anstelle von Variablen.
Dies kann über das Menü »Ansicht« eingestellt werden.
|
|
|
Protokolle werden nun noch effizienter kompaktifiziert und enthalten spezielle Einträge
als Platzhalter für Knoten, die dabei entfernt wurden.
|
|
|
Unterstützung für das Eclipse Graphical Editing Framework (GEF) ist nun standardmäßig
aktiviert. Sie funktioniert nun auch mit mehreren GEF Editoren gleichzeitig.
|
|
|
Die neue Prozedur qfs.web.input.fileUpload in der Standardbibliothek
qfs.qft unterstützt INPUT:FILE Knoten in den
verschiedenen Browser-Varianten.
|
|
|
Die TestLink Integration wurde vereinfacht.
|
|
|
Bei Swing und SWT Tabellen und mehrspaltigen Bäumen können nun ganze Zeilen auf einmal
geprüft werden.
|
|
|
ExtraFeatureResolver können nun auch für SWT und Swing verwendet werden.
|
|
|
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.
|
|
|
Auf die Run-ID des aktuellen Testlaufs kann nun mittels ${qftest:runid} zugegriffen
werden.
|
|
|
Spezielle Variablen und Properties vom Typ Gruppe:Name können nun für
'Charakteristische Variablen' verwendet werden.
|
|
|
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:
|
|
Mehrere Ursachen für Abstürze im IE wurden beseitigt.
|
|
|
Warten auf Abwesenheit funktioniert nun korrekt mit unsichtbaren Knoten.
|
|
|
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.
|
|
|
Der interne Variablenstapel von QF-Test konnte in einigen speziellen Fällen durcheinander
geraten.
|
|
|
Bei der Aufnahme von Prozeduren werden '_' Zeichen in Package- oder Klassennamen nun
korrekt behandelt.
|
Version 3.1.3 - 1. Dezember 2009
Neue Features:
|
|
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.
|
|
|
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.
|
|
|
In der Workbench-Ansicht gibt es nun ein Kontextmenü für die Testsuite-Reiter.
|
|
|
Alle 'Bemerkung' Attribute können nun analog zu Skripten in einem externen Editor
bearbeitet werden.
|
|
|
Im Protokoll-Fenster gibt es neue Buttons in der Werkzeugleiste zur Navigation zum
nächsten bzw. vorhergehenden Fehler oder Warnung.
|
|
|
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.
|
|
|
'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:
|
|
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.
|
|
|
Verschiedene Exceptions, die durch die neue Workbench-Ansicht und die Dialoge mit den
Mehrfach-Ergebnissen verursacht wurden, sind
nun beseitigt.
|
|
|
Text Checks für das SWT Group Widget fehlten.
|
|
|
Das automatische Scrollen von Webseiten für Abbild Checks und die Wiedergabe von harten
Events funktioniert nun korrekt.
|
|
|
Das Untermenü für Marken im Popup Menü konnte manchmal leer sein.
|
Patch 3.1.2-p1 - 20. Oktober 2009
Beseitigte Bugs:
|
|
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.
|
|
|
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.
|
|
|
Ein Aufruf von stopRun konnte den gemeinsamen RunContext im QF-Test Daemon
unbrauchbar machen.
|
Version 3.1.2 - 15. Oktober 2009
Neue Features:
|
|
Es wird nun die aktuelle Eclipse/SWT Version 3.5.1 unterstützt.
|
|
|
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.
|
|
|
QF-Test unterstützt nun die Interaktion mit dem Open Source Test-Management Werkzeug
TestLink.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
Event Knoten können nun in einen 'Warten auf Komponente' Knoten transformiert werden.
|
|
|
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.
|
|
|
Die Warnung bezüglich verschachtelter Ausführung von 'Testfall' Knoten kann nun über
die Option "Warnung bei verschachtelten Testfällen ausgeben" unterdrückt werden.
|
|
|
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.
|
|
|
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.
|
|
|
Es ist jetzt möglich, nur eines der Attribute 'Insgesamt' oder
'Index' in einem 'Komponente' Knoten anzugeben und das
andere zu ignorieren.
|
Beseitigte Bugs:
|
|
Beim Ersetzen eines Regulären Ausdrucks mit einem leeren String über den Ersetzen-Dialog
kam es zu einer Exception.
|
|
|
Die Funktion, um 'Prozeduraufrufe' oder 'Bezüge auf Abhängigkeiten' relativ zu
machen, funktionierte noch nicht zuverlässig.
|
|
|
Beim Verschieben von mehreren 'Prozeduren' konnte die automatische Korrektur der
'Prozeduraufrufe' in speziellen Fällen scheitern.
|
|
|
Die Aufnahme von Prozeduren funktioniert nun auch für abgeleitete Klassen mit speziellem
ClassLoader korrekt.
|
|
|
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.
|
|
|
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.
|
|
|
'Index auslesen' Knoten waren für SWT nicht implementiert.
|
|
|
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:
|
|
Dieser Zusatz bietet Unterstützung für Eclipse/SWT 3.5.1 "Galileo".
|
Version 3.1.1 - 28. July 2009
Inkompatible Änderungen:
|
|
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:
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
'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.
|
|
|
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.
|
|
|
Es werden nun einige zusätzlich Varianten zum Konvertieren, Ein- und Auspacken von
Knoten angeboten.
|
Beseitigte Bugs:
|
|
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.
|
|
|
DaemonTestRunListener funktionierten im asynchronen Modus nicht korrekt.
|
|
|
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.
|
|
|
Bei Verwendung der neuen regulären Ausdrücke von Java konnten im 'Ersetzen' Dialog
spezielle Ersetzungen auf Basis von Regexps nicht ausgeführt werden.
|
|
|
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.
|
|
|
Die JDK Instrumentierung funktioniert nun auch für ein OpenJDK Verzeichnis.
|
|
|
Beim Warten auf ein neues Dokument wurde das Attribut 'Name des Browser-Fensters'
nicht korrekt berücksichtigt.
|
|
|
Beim Warten auf das Ende eines Downloads wurde immer die gesamte Wartezeit verbraucht.
|
|
|
In sehr seltenen Fällen konnte das Abspielen einer Texteingabe eine SWT Anwendung unter
Linux zum Absturz bringen.
|
|
|
Änderungen an Optionen mittels rc.setOption() wurden im SUT wieder
zurückgesetzt, wenn Optionen interaktiv über den Dialog geändert wurden.
|
|
|
Die Wiedergabe von Events für SWT MenuItems war mit Gtk 2.4 unter RedHat
Enterprise Linux 4 nicht zuverlässig.
|
|
|
Die Jython Module ktable und gef für die entsprechenden SWT
Komponenten waren nicht korrekt an die neuen ItemResolver und
Checker Mechanismen angepasst.
|
|
|
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:
|
|
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:
|
|
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.
|
|
|
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:
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
'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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
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.
|
|
|
Die Unterstützung für Eclipse/SWT wurde auf den Stand des aktuellen Eclipse Milestone
3.5M7 gebracht.
|
|
|
Die Runcontext Methode rc.callProcedure funktioniert nun auch - mit den
üblichen Einschränkungen - aus einem 'SUT Skript' für eine Webanwendung.
|
|
|
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.
|
|
|
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.
|
|
|
Ü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.
|
|
|
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:
|
|
Für SUTs unter Mac OS X wird die Benutzung der Bildschirm-Menüleiste unterdrückt, um
sauberes Aufnehmen/Wiedergeben zu erlauben.
|
|
|
Das Aktivieren einer Engine-Lizenz im Optionen-Dialog funktioniert nun korrekt.
|
|
|
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:
|
|
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:
|
|
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.
|
|
|
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.
|
|
|
Die JDK Instrumentierung funktioniert nun auch für ein OpenJDK Verzeichnis.
|
|
|
Beim Warten auf ein neues Dokument wurde das Attribut 'Name des Browser-Fensters'
nicht korrekt berücksichtigt.
|
|
|
Beim Warten auf das Ende eines Downloads wurde immer die gesamte Wartezeit verbraucht.
|
|
|
Eine Lizenz für eine Engine lässt sich nun korrekt im Optionen Dialog aktivieren.
|
|
|
In sehr seltenen Fällen konnte das Abspielen einer Texteingabe eine SWT Anwendung unter
Linux zum Absturz bringen.
|
|
|
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:
|
|
Der Hauptgrund für diese Patch-Version ist die Unterstützung für Eclipse 3.5 "Galileo".
|
Beseitigte Bugs:
|
|
Die Wiedergabe von Events für SWT MenuItems war mit Gtk 2.4 unter RedHat
Enterprise Linux 4 nicht zuverlässig.
|
|
|
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:
|
|
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.
|
|
|
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:
|
|
Es werden nun auch die Eclipse/SWT Versionen 3.5M6 und 3.4.2 unterstützt.
|
|
|
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:
|
|
'Warten auf Laden des Dokuments' Knoten für Web-Clients funktionierten im Fall mehrerer
geöffneter Browserfenster nicht zuverlässig.
|
|
|
Die Überprüfung des enabled/disabled Zustands einer Komponente findet nun auch bei
Webanwendungen statt.
|
|
|
Für Web-Clients wird nun auch die Aufnahme und Wiedergabe von MOVED und SIZED Events
unterstützt.
|
|
|
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.
|
|
|
Das Verwerfen und neu Erstellen eines SWT Displays wird nun korrekt
behandelt.
|
|
|
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.
|
|
|
Für Check Knoten mit langer Wartezeit wird die Überprüfung auf Deadlocks nun
entsprechend angepasst.
|
|
|
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:
|
|
Der Jython und Groovy Runcontext rc bietet nun die Methoden
getBool, getInt, getNum und
getString zum einfacheren Auslesen von typisierten Variablen in Skripten.
|
|
|
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.
|
|
|
Die Template-Datei für die automatische Erstellung von Prozeduren wurde um einen Eintrag
für Swing JInternalFrame Komponenten ergänzt.
|
Beseitigte Bugs:
|
|
Webtesten mit Mozilla unter Linux ist nicht mehr auf JDK 1.4 beschränkt.
|
|
|
Die Funktion zum Aktualisieren von Komponenten konnte bei Webseiten mit tief
verschachtelten Tabellen zu doppelt vergebenen IDs von Komponenten führen.
|
|
|
Das Links-Nach-Rechts-Binden von Werten in 'Datentabelle' und anderen 'Daten'
Knoten funktioniert nun korrekt.
|
|
|
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.
|
|
|
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.
|
|
|
Beim Aufnehmen von Prozeduren konnte ein '$' Zeichen in einem Feld des SUT zu einer
Exception führen.
|
|
|
Das Laden von Groovy Klassen und das Parsen von Groovy Skripten wurde beschleunigt, für
manche Fälle - speziell Applets - drastisch.
|
|
|
Eine gefangene Exception unterhalb eines 'Finally' Knotens in einem
'Try' Knoten konnte den Fehlerstatus einer vorher in einem
'Catch' Knoten gefangenen Exception durcheinander bringen.
|
|
|
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:
|
|
Plattform- und browserübergreifendes Webtesten mit Unterstützung für web2.0/AJAX.
|
|
|
Anbindung an HP/Mercury Quality Center und Imbus TestBench.
|
|
|
Groovy als zweite Skriptsprache.
|
|
|
Neue Jython Version 2.2.1.
|
|
|
Verbesserter Jython und Groovy Skripteditor mit Syntaxhervorhebung.
|
|
|
Automatische Erstellung von Basisprozeduren.
|
|
|
Erweiterte und vereinheitlichte Funktionalität von 'Check...' und 'Warten auf...' Knoten.
|
|
|
Direkte Unterstützung für negierte Checks.
|
|
|
Geteilte Protokolle ermöglichen lang laufende Tests ohne Speicherprobleme.
|
|
|
64-Bit Unterstützung für SWT unter Windows und Linux.
|
|
|
Erweiterungen und ein externer Treiber für das Daemon API.
|
|
|
Neues Konzept: "Erwarteter Fehler" für 'Testfall' Knoten.
|
|
|
Koordination und Dokumentation von manuellen Tests.
|
|
|
Erweitertes Undo.
|
|
|
Immediate und Lazy Binding von Variablen.
|
|
|
Image API zum Erstellen und Speichern von Screenshots.
|
|
|
Verschlüsselung von Text zur Eingabe in Kennwort-Felder.
|
|
|
Rekursives Sortieren und Transformieren von Knoten.
|
|
|
Verbesserte Suche mit Hervorhebung der Ergebnisse.
|
|
|
Erweiterungen für die Standardbibliothek qfs.qft.
|
|
|
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.
|  |