Wie testest du dein Javascript?

10

Ich verbringe in letzter Zeit viel Zeit mit Javascript. Ich habe keinen Weg gefunden, der zum Testen von Javascript gut zu funktionieren scheint. Dies war in der Vergangenheit für mich kein Problem, da die meisten Websites, an denen ich gearbeitet habe, nur sehr wenig Javascript enthielten. Ich habe jetzt eine neue Website, die jQuery in großem Umfang nutzt. Ich möchte Unit-Tests für den größten Teil des Systems erstellen.

Meine Probleme sind dies.

  • Die meisten Funktionen nehmen in irgendeiner Weise Änderungen am DOM vor.
  • Die meisten Funktionen fordern auch Daten vom Webserver an und erfordern eine Sitzung im Dienst, um die Ergebnisse zurückzugewinnen.

Ich möchte den Test entweder über eine Befehlszeile oder ein Testlauf-Harness anstatt in einem Browser ausführen.

Jede Hilfe oder Artikel, die ich lesen sollte, wäre hilfreich.

Erin
quelle
Schauen Sie sich JSTestDriver an , geschrieben von Misko Hevery, der viele großartige Artikel über Testbarkeit im Allgemeinen schreibt.
Paul Sanwald

Antworten:

3

Vielleicht könnte QUnit Ihnen helfen. Es ist die offizielle Testsuite des jQuery-Projekts. Wie in der Dokumentation beschrieben, können Tests auch außerhalb eines Browsers ausgeführt werden ( z. B. mit Rhino ).

uloBasEI
quelle
1

Aufgrund des interaktiven Charakters von Javascript ist es schwierig, Unit-Tests in etwas anderes als Bibliotheken zu schreiben. Zum Testen von Interaktionen verwenden wir Selen , mit dem Sie Interaktionen aufzeichnen und das erwartete Ergebnis überprüfen können (z. B. ein DIV oder eine Wertänderung). Tests können in Suiten gruppiert und automatisch ausgeführt werden.

Selentests können auch ohne Browser auf dem Server ausgeführt werden, mit einigen zusätzlichen Einstellungen.

Eran Galperin
quelle