Ich versuche, die Testkasse für die Fabrik zu schreiben, die eine JSON-Antwort zurückgibt.Wie schreibe ich einen Testfall für JSON, der eine Formularfabrik in AngularJS bekommt
Aber ich erhalte die Fehlermeldung:
Fehler: [$ Injektor: UNPR]? http://errors.angularjs.org/1.4.1/ $ Injektor/UNPR p0 = serviceprovider% 20% 3C-% 20service bei Error (nativ)
Hier ist mein Code:
(function() {
angular.module('uspDeviceService',[]).factory('getDevice', GetDevice);
GetDevice.$inject = ['$http'];
function GetDevice($http) {
getDeviceList = function() {
return $http.get("static/test-json/devices/device-list.json");
}
return {
getDeviceList: getDeviceList
}
}
}());
-Code für Testfall:
describe('Get Product test', function() {
beforeEach(module('uspDeviceService'));
var service, httpBackend, getDevice ;
beforeEach(function() {
angular.mock.inject(function ($injector) {
//Injecting $http dependencies
httpBackend = $injector.get('$httpBackend');
service = $injector.get('service');
getDevice = $injector.get('getDevice');
})
});
console.log('Injection Dependencies is done');
describe('get Device List', function() {
it("should return a list of devices", inject(function() {
httpBackend.expectGET("static/test-json/devices/device-list.json").respond("Response found!");
httpBackend.flush();
}))
})
});
Ich bin neu in Eckige Unit-Tests, kann jemand bitte helfen Sie mir, wo ich falsch werde ..
Ok tun kann ich es bekommen habe und dann, wie zu testen, ob JSON kommt oder nicht? –
@AnitaMehta: Da dies ein Komponententest ist, möchten Sie annehmen, dass JSON immer genau zurückkommt. Wenn Sie den tatsächlichen Live-Endpunkt testen möchten, dann zwei Worte der Vorsicht: Da es von einem Dritten stammt, wird es brüchig sein, und diese Art von Tests werden am besten einem End-to-End-Test überlassen. – Makoto
Ich möchte nur überprüfen, ob Daten von der Fabrik zurückkommt, das ist alles –