Fehler beim Analysieren von Vorlagen im Jasmine-Test, aber nicht in der aktuellen App

9

Ich habe eine Jasmine-Spezifikation entwickelt, um eine eckige 2-Komponenten MiddleRowComponent zu testen. Wenn ich den Jasmin-Test ausführe, gibt es diesen Fehler:

%Vor%

Wenn ich jedoch meine Webanwendung wie üblich im Browser starte, tritt der Fehler nicht auf. circles ist tatsächlich ein Teil des Moduls. Und custom-button ist Teil eines gemeinsam genutzten Moduls, das importiert wird. Hier ist das Modul.ts:

%Vor%

Alles wird importiert und deklariert, wie es sein sollte, und funktioniert, wenn die App ausgeführt wird, ohne sie zu testen. Ich verwende ein done , um das beforeEach zu arbeiten, da es asynchron ist, die Komponentenvorlage aus einer separaten Vorlagendatei zu erhalten. Ich ruu den Test mit einem Jasmine Spec Runner HTML-Datei. Wie kommt es, dass meine Komponenten, die MiddleRowComponent verwendet, keine bekannten Elemente im Jasmin-Test sind, aber wenn die App normal läuft?

Hier ist die Jasmin-Spezifikation:

%Vor%

voller Fehler:

%Vor%     
BeniaminoBaggins 21.11.2016, 08:27
quelle

2 Antworten

11

Nun, das Modul Ihres Tests hat nur MiddleRowComponent deklariert. So weiß es nicht über CircleComponent:

%Vor%

Fügen Sie alle notwendigen Komponenten in den Deklarationen des Testmoduls hinzu oder fügen Sie LandingPageModule zu den Importen des Testmoduls hinzu.

    
JB Nizet 21.11.2016, 08:32
quelle
0

Ich hatte ein ähnliches Problem und fand diese Seite, und während JB Nizets Antwort zu einer Lösung für mich führte, funktionierte es für mich nicht wie es ist. Ich versuche nicht von seiner soliden Antwort auf die ursprüngliche Frage wegzukommen, ich versuche nur der nächsten Person zu helfen, die mitkommt.

Mein Problem war genau wie bei den OPs, nur dass meine benutzerdefinierte Komponente ( MiddleRowComponent in diesem Beispiel) eine Drittanbieterkomponente verwendet hat. Der Komponententestfehler wurde für das Drittanbieter-Tag in meiner Vorlage angegeben, obwohl es in der tatsächlichen App problemlos funktioniert. Die Lösung für mich bestand darin, auch ein imports für den Drittanbieter in mein Testmodul aufzunehmen:

%Vor%

Dann liefen meine Komponententests ohne den Fehler. Hoffe das hilft!

    
Stokesified 07.02.2018 01:03
quelle

Tags und Links