Wie testet man eine Winkelanweisung im Unit-Test?

8

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?

    
Jeanluca Scaljeri 17.11.2015, 13:21
quelle

3 Antworten

2

So testen Sie Ihre AngularJS-Direktive:

%Vor%
    
Offirmo 17.11.2015 14:49
quelle
1

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.

    
Avraam Mavridis 17.11.2015 13:42
quelle
1

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.

    
desicne 17.11.2015 13:35
quelle