wie man $ window.open mit Jasmine testet

8

Das ist meine Funktion

%Vor%

Dies ist meine Jasmin-Testspezifikation

%Vor%

aber wenn ich versuche, das auszuführen, öffnet es einen neuen Tab und ich möchte nicht, dass das passiert, ich möchte nur überprüfen, ob die angegebenen returnValues ​​vorhanden sind, nicht !!

    
Syed Rasheed 08.07.2015, 07:28
quelle

1 Antwort

14

Zunächst ist Ihre Erwartung (window.open) .toHaveBeenCalled () an der falschen Stelle. Sie können nicht erwarten, bevor Sie das Ereignis ausspionieren. Jetzt kommt zu deiner Frage Es gibt verschiedene Methoden in Jasmine, Abhängigkeiten auszuspionieren, wie

  • .and.callThrough - Durch die Verkettung des Spions mit and.callThrough verfolgt der Spion immer noch alle Aufrufe, aber zusätzlich delegiert er an die tatsächliche Implementierung.
  • .und.callFake - Durch Verkettung des Spions mit and.callFake werden alle Aufrufe an den Spion an die angegebene Funktion delegiert.
  • .and.returnValue - Durch Verketten des Spions mit and.returnValue geben alle Aufrufe der Funktion einen bestimmten Wert zurück.
  

Überprüfen Sie Jamine doc auf die vollständige Liste

Beispiel Testfall für unten gemäß Ihrer Anforderung

%Vor%

Wird

sein %Vor%     
Bhaskar Gyan Vardhan 08.07.2015, 19:49
quelle

Tags und Links