J'écris des tests unitaires pour mon site Web au travail et je n'arrive pas à comprendre comment tester un appel api.Unité testant un appel API à l'aide de jasmin
Disons que je veux tester un appel api dans un de mes composants Vue
api.ajax("users")
.done((response) => {
stores.usersStore.init(response)
})
usersStore.js
let usersStore = {
store: {
users: []
},
get() {
return this.store
},
set(key, value) {
if (key) {
this.users[key] = value
} else {
console.error("Key required")
}
},
init(initObject) {
this.store.users = initObject
}
}
export default usersStore;
Ainsi, l'appel api initialise fondamentalement juste le tableau des utilisateurs. Comment puis-je tester quelque chose comme ça dans le jasmin? J'ai essayé des espions, et je me moquais.
Toutes les entrées seraient grandement appréciées!
Edition -> Le test je tente d'écrire
describe(" Tests", function() {
var us;
beforeEach(function() {
us = new usersStore()
us.store.users.push("Anand Dharne")
});
describe("when retrieved by name", function() {
var u;
beforeEach(function(done) {
u = us.init(response, {
success: function() {
done();
}
});
});
it("api call", function() {
expect(u.store.users).toEqual("Anand Dharne");
});
});
});
S'il vous plaît montrer vos tentatives sur le test avec « espions, et se moquant » afin que la communauté peut vous guider dans la bonne direction. –
@ try-catch-finally J'essaie de faire quelque chose comme ça vérifier la nouvelle édition –