Das Testen einer Winkelrichtlinie ist nicht sehr schwierig, aber ich habe herausgefunden, dass es verschiedene Möglichkeiten gibt, dies zu tun.
Für diesen Beitrag nehmen wir die folgende Anweisung an
%Vor%Jetzt kann ich mir zwei Möglichkeiten vorstellen, dies zu testen
Methode 1:
%Vor%Methode 2:
%Vor%Also, ich bin neugierig, was das Vor- und Nachteile beider Methoden und welche ist am robustesten?
Ich finde die erste Methode "korrekter", weil sie nicht von einem Klickereignis abhängt. Ich glaube, wenn Sie das Klicken eines Elements und dessen Auswirkungen testen möchten, sollten Sie einen Winkelmesser verwenden und Jasmin nur für Komponententests verwenden. Auf diese Weise haben Sie eine gute Trennung zwischen den Komponententests und den UI-Tests.
Auch macht es den Test mehr Haupttabelle. z.B. Wenn Sie toggle
bei Hover statt bei Klick in der zweiten Methode auslösen möchten, müssen Sie die Tests ebenfalls aktualisieren.
Was ich gerne mache, ist, Geschichten von meinem Test wie dieses Dummy-Beispiel zu erstellen.
%Vor%Ich nehme an, Sie haben es im zweiten Beispiel einfach nicht angegeben, aber falls Sie das getan haben, verwenden Sie beim Testen immer die Beschreibung enclosure, nur eine gute Übung.
Wie für den Test selbst würde ich empfehlen, die Methode zu vermeiden, in der Sie explizit den Bereich $ digest () aufrufen, vor allem, weil dies für den Zweck Ihres Tests nicht notwendig erscheint.
Kurz würde ich für Methode 1 gehen.
Tags und Links javascript angularjs unit-testing