Jasmine angularjs testing - Argument 'PhoneListCtrl' ist keine Funktion, wurde undefiniert

8

Beim Ausführen eines angularjs + Jasmine + Karma-Tests wurde folgender Fehler angezeigt:

Mein Testskript ist:

%Vor%

Dieser Code ist nur eine Kopie aus dem offiziellen AngularJS Tutorial hier: Ссылка

Hier ist ein Teil meiner Datei karma.conf.js:

%Vor%

Der Fehler ist PhoneListCtrl nicht definiert, aber ich glaube, es ist definiert und in den obigen Code geladen. Was denkst du ist das Problem? Danke!

    
Nicolas S.Xu 13.04.2014, 17:10
quelle

2 Antworten

13

Der Modulinitialisierungsteil fehlt in Ihrem Komponententest. Sie sollten module('phonecatApp') aufrufen, bevor Sie das erste Mal inject() aufrufen. Ihr Unit Test Code sollte in diesem Fall wie folgt aussehen:

%Vor%

Dabei steht phonecatApp für den Namen des Moduls, in dem Sie Ihren PhoneListCtrl -Controller definiert haben.

Auch das Tutorial, das Sie verwenden, ist veraltet, es ist für die instabile Version von Angular (1.2.0-rc.3). Hier ist eine aktualisierte Version desselben Tutorials für die neueste Version von Angular: Ссылка

    
Vadim 13.04.2014, 18:36
quelle
1

das funktioniert für mich

%Vor%     
misha-from-lviv 26.10.2015 12:58
quelle

Tags und Links