Angular Karma Jasmine Fehler: Illegaler Status: Konnte die Zusammenfassung nicht zur Richtlinie laden

8

Ich entwickle ein github-Repository (mit eckiger 4 und angular-cli), und ich habe einige testet mit Karma und Jasmine in der Meisterbranche.

Jetzt versuche ich, die Lazy Loading-Funktion hinzuzufügen, und ich habe einen neuen Zweig erstellt, den Sie sehen können hier .

Die Sache ist, dass die Tests, die vorher bestanden haben, sie jetzt nicht tun. Es ist witzig, weil nur die Tests vom Lazy Loading-Modul fehlschlagen ...

Hier ist der Code und der Fehler:

%Vor%

Der Fehler ist dies:

%Vor%

Sie können das gesamte Projekt sehen, für weitere Details, wenn Sie es brauchen.

UPDATE: Deklaration wie folgt hinzugefügt:

%Vor%

Nun erscheinen neue Fehler:

%Vor%

Und mehr ... es ist wie alle Direktiven und Komponenten aus eckigem Material, und die Rohrübersetzung von ngx-translate / core scheint nicht enthalten zu sein ...

AKTUALISIERT: ABSCHLIESSENDE LÖSUNG

Das Problem war, dass HeroesModule nirgends importiert wurde. Das funktioniert, weil HeroesModule HeroDetailComponent deklariert, was das ursprüngliche Problem war:

%Vor%     
Ismaestro 09.08.2017, 08:04
quelle

3 Antworten

18

Sie haben HeroDetailComponent an TestBed.createComponent() übergeben, ohne zuerst die Komponente zu deklarieren:

%Vor%

Ich hoffe, es hilft.

Aktualisierung für folgende Fehler in Ihrem Test: Fügen Sie einige weitere Importe hinzu (nehmen Sie einfach Ihr HeroModule als eine Blaupause, weil das im Grunde das ist, was Sie importieren und bereitstellen möchten).

    
lexith 09.08.2017, 08:46
quelle
0

Sie müssen die Komponente HeroDetailComponent auf die richtige Weise importieren. Beachten Sie, dass selbst Buchstaben in Pfaden vorkommen. h. ('@ angular / forms' ist korrekt, BUT '@ angular / Forms' nicht.

    
sami 05.03.2018 21:43
quelle
0

Sie vermissen die Deklarationen. Sie müssen die zu testende Klasse in die Deklarationen einfügen.

%Vor%     
Akash Yellappa 04.04.2018 00:49
quelle