Wie integriere ich (html) Fixtures mit testacular? Gibt es eine Empfehlung für DOM-basierte Tests oder ist es ein Anti-Pattern?
Ziel: Ich versuche, ein benutzerdefiniertes Modul zu testen, das den DOM-Baum analysiert und eine neue Datenstruktur erstellt. Der DOM-Baum kann dynamisch sein (wie der Inhalt eines HTML- / Markdown-Editors) und ist daher kein guter Kandidat für End-to-End-Tests
Problem: Ich versuche Jasmine-Jquery für dieses DOM-Testen zu verwenden und in meiner testacular.conf.js habe ich den Abschnitt, um das Laden von HTML-Dateien in den Browser zu erlauben.
%Vor%Allerdings bekomme ich in meinem Test Runner auf der Kommandozeile die folgende Fehlermeldung, wenn ich den html-Fixtur lösche (noch bevor ich irgendeinen Jasmine-jquery-Code schreibe, um das Fixture zu laden):
%Vor%BEARBEITEN : Eine andere Möglichkeit, die gleiche Frage zu stellen: Wie bekomme ich testacular, um HTML zu bedienen und den Testläufer nicht zu sprengen?
Wie ich oben erwähnt habe, muss ich die "test / fixtures / *. html" in die Config einfügen, aber der Test Runner explodiert gerade.
Aktuelle Version von testacularjs kann dies nicht unterstützen. Der Autor von testacularjs (Vojta Jina) schlug jedoch vor, eine Proxy-Lösung zu verwenden, um dies zu umgehen, indem der HTML-Code über einen anderen Webserver bereitgestellt wird. Für die Neugierigen, hier sind die End-to-End-Schritte, um dies zum Laufen zu bringen.
Starten Sie zuerst den Webserver, indem Sie einen Befehl wie den folgenden ausführen
python -m SimpleHTTPServer 3502 & amp;
Lassen Sie Ihre Fixture-Datei (en) an einem geeigneten Ort fallen. Meine war test / fixtures / first.html
Nun sollten Sie in der Lage sein, [http: // localhost: 3502 / test / fixtures / first.html] zu besuchen und das Markup zu sehen, wenn Sie die Seitenquelle prüfen
Bearbeiten Sie testacular.conf.js, um den Konfigurationsblock hinzuzufügen
%Vor%Bearbeiten Sie Ihren Jasmin-Einheitentest, um einen Block wie den folgenden zu haben
%Vor%Nun sollten Sie in der Lage sein, die Fixture / Readfixture zu laden
Tags und Links unit-testing continuous-integration jasmine fixtures