2009-08-20 13 views
4

Ich bin auf der Suche nach einem JavaScript Unit Test Framework, das ich als Teil meiner automatisierten Maven Build verwenden kann. Dies kann NICHT einen tatsächlichen Browser verwenden, und es muss vollständig browserlos sein.Browserlose, Ant-Task-orientierte JavaScript Unit Testing?

Ich habe versucht, ein paar Beiträge auf SO, aber keiner scheint meine Bedürfnisse zu erfüllen. Gibt es einen solchen JavaScript Unit Tester? Ich bin bestrebt, es herauszufinden.

+0

Sie können eventuell reine JavaScript testen, einen Blick darauf werfen, aber Sie werden nicht in der Lage sein, jeden Code zu testen, der das DOM manipuliert, ohne etwas zu tun, das zumindest die DOM-Schnittstelle simuliert. – NickFitz

Antwort

1

Ich bin mir nicht sicher, ob es einen JavaScript-Test gibt, obwohl ich sicher bin, dass es einen gibt. Aber ich würde wahrscheinlich Rhino als JS-Interpreter ansehen.

http://www.mozilla.org/rhino/

Wenn Ihre JS Referenzen irgendwelche des Browsers/DOM Sie müssen auch diejenigen/Stub ...

-2

AFAIK verspotten, Javascript ist eine Sprache, die speziell im Browser ausgeführt werden entworfen.

Haben Sie sich Gedanken über j-unit Tests gemacht? Sie laufen jedoch immer noch im Browser.

+2

JavaScript begann das Leben in einem Browser, ist aber nachdrücklich * nicht * eine reine Browser-Sprache. Innerhalb von nur ein paar Jahren wurde es in nicht-Browser-Umgebungen verwendet und wird es auch weiterhin sein. Seine Spezifikation [1] ist allgemein, nicht browserspezifisch. Es ist eine Skriptsprache in einer beliebigen Anzahl von Softwarepaketen, eine serverseitige Sprache für dynamische Websites, eine Befehlsshell-Skriptsprache usw. [1] http://www.ecma-international.org/publications /standards/Ecma-262.htm –

+0

Erklären Node.js – Steve

0

Haben Sie JSunit ausprobiert?

+0

Benötigt es keinen Browser? –

3

Es gibt zwei Projekte namens JSUnit (www.jsunit.net) und (jsunit.berlios.de). Letzteres wurde entwickelt, um mit Rhino and Maven zu arbeiten. Beachten Sie, dass es browserspezifische Probleme gibt, die solche Tests nicht entdecken, aber es sollte mit grundlegenden Funktionen helfen.