Ich versuche, einen AngularJS-Controller mit einer Jasmine-Einheitstestspezifikationsdatei zu testen. Mein Ansatz ist in dem folgenden Test $ httpBacked, zu verwenden:
describe('SubmissionsController', function() {
var minimal_mock_response = [ { id: 1 } ];
var scope, routeParams, $httpBackend;
beforeEach(module('submissionServices'));
beforeEach(inject(function($_httpBackend_, $rootScope) {
scope = $rootScope.$new();
$httpBackend = $_httpBackend_;
$httpBackend.expectGET('/submissions').respond(minimal_mock_response);
routeParams = {};
}));
it('passes a trivial test', function() {
expect(true).toBe(true);
});
});
ich eingeführt, um das erwarten (true) .toBe (true) nur um den Test zu erhalten auszuführen und scheitern, auch wenn es nicht die Winkel berührt Regler. Wenn ich versuche ich den Test mit Jasmin-Headless-Webkit zu laufen, erhalte ich folgende Fehlermeldung:
jasmine-headless-webkit spec/javascripts/SubmissionsControllerSpec.js
Running Jasmine specs...
F
FAIL: 1 test, 1 failure, 0.011 secs.
Submissions controllers SubmissionsController passes a trivial test. (XXX/spec/javascripts/SubmissionsControllerSpec.js:18)
Error: Unknown provider: $_httpBackend_Provider <- $_httpBackend_
Test ordering seed: --seed 9254
Gibt es Hinweise, wie ich diesen Fehler korrigieren und den triviale Test machen ausführen?
Dieses Problem behoben, danke! – oxirane
Das einzige Problem hier war ein Tippfehler. Es sollte \ _ $ httpBackend \ _, nicht $ _httpBackend_ sein. Die folgende Antwort ist dieser vorzuziehen. – user553086
@RichardMorgan Sie haben Recht. Ich habe meine Antwort aktualisiert. +1 zu ghiden – dnc253