Laufende Unit-Tests von JavaScript-Code von XUL - was und wie

8

Ich schreibe eine XUL-Anwendung. Es handelt sich nicht um eine Firefox-Erweiterung, sondern um eine Standalone-App, die über XULrunner verwendet werden kann. Ich beabsichtige, TDD in meinen Entwicklungsprozess aufzunehmen, und ich schaue mir RhinoUnit als Unit-Test-Framework an. Ich werde versuchen, es trotzdem zu benutzen, aber es gibt nicht viel Dokumentation über das Testen von XUL-Anwendungen. Manche Leute reden über die Verwendung von UxU - aber nur für Firefox-Addons - und Mochitest - wenn du nur Mozilla testen willst.

Meine Frage ist: Hat jemand eine XUL-Anwendung mit Komponententests geschrieben? Welches Werkzeug hast du benutzt und, wenn es jemand ist, den ich erwähnt habe, wie hast du es benutzt?

    
brandizzi 23.07.2011, 01:17
quelle

2 Antworten

1

Sie könnten versuchen, Mozmill zu sehen. Es ist ein Addon, das zum Testen aller auf Gecko basierenden Anwendungen verwendet werden kann.
Sie können damit die Benutzeroberfläche Ihrer Anwendung testen.
Die Dokumentation ist ganz in Ordnung und wenn Sie irgendwelche Fragen haben, können Sie die dedizierte Mailingliste versuchen.

    
revers 27.07.2011 15:35
quelle
1

Ich verwende Mochitest erfolgreich für ein Add-on, es sollte in einer XULRunner-Anwendung auf die gleiche Weise verwendbar sein. Sie benötigen die Dateien unter Ссылка , verwenden Sie den Link "zip", um das Verzeichnis herunterzuladen Inhalt. Legen Sie diese Dateien irgendwo in Ihrem Projekt ab und ordnen Sie dieses Verzeichnis chrome://mochitest/content/ zu. Setzen Sie Ihre Tests in das Unterverzeichnis chrome/ , es gibt eine umfangreiche Dokumentation zum Schreiben dieser Tests. Sie könnten die Befehlszeilenoptionen runtests.py mit --chrome verwenden, um die Tests zu starten, aber ich bezweifle, dass dies möglich ist, ohne das Skript zu optimieren. Das Öffnen von chrome://mochitest/content/harness.xul in Ihrer Anwendung (als XUL-Dialog oder durch Angabe von -chrome chrome://mochitest/content/harness.xul in der Befehlszeile) sollte ebenfalls funktionieren.

Bearbeiten : Ich habe mich geirrt, der "zip" -Link lädt das gesamte Repository herunter. Ich kenne keine Möglichkeit, ein bestimmtes Verzeichnis aus dem Repository zu erhalten, dann sollte die schnellste Lösung hg clone http://hg.mozilla.org/mozilla-central/ von der Befehlszeile ausführen, um eine Kopie des gesamten Repository zu erhalten.

    
Wladimir Palant 10.08.2011 16:37
quelle