4-3 Test d'un retour d'objet (Obtenir projet)
Maintenant, essayons de tester une requête pour obtenir le détail d'un projet.
URL pour ce test:
{{baseUrl}}/projets?id=eq.1
Assurez-vous de modifier 1
pour un identifiant de projet valide dans votre compte Supabase.
Tester que la réponse est un succès et de type JSON
Premièrement, on peut tester, de façon similaire aux tests précédents, que la réponse est un succès, qu'elle a un body
et est de type JSON
.
pm.test("La réponse est un succès et contient du JSON", function () {
pm.response.to.be.ok;
pm.response.to.be.withBody;
pm.response.to.be.json;
});
Tester que la réponse est un objet et contient certaines propriétés
Finalement, on veut au minimum tester que la réponse contient des propriétés attendues, comme nom
et description
. On peut utiliser le même principe que précédemment, soit en mettant le retour dans une variable jsonData
et effectuer des vérifications sur cette dernière.
pm.test("La réponse est de type objet et contient les propriétés attendues", function () {
let jsonData = pm.response.json();
pm.expect(jsonData).to.be.an('object');
pm.expect(jsonData).to.have.property('nom');
pm.expect(jsonData).to.have.property('description');
});
Dans ce cas, on vérifie que:
- Le contenu de
jsonData
(retour de l'API) est un objet - Cet objet contient bien des propriétés
nom
etdescription
Ceci est un exemple de vérification de propriétés. Pour la mission 1 (tester l'API), vous devez vérifier que les propriétés pertinentes sont présentes!
Scénario de test complet
Le scénario de test complet, au final, est donc le suivant:
pm.test("La réponse est un succès et contient du JSON", function () {
pm.response.to.be.ok;
pm.response.to.be.withBody;
pm.response.to.be.json;
});
pm.test("La réponse est de type objet et contient les propriétés attendues", function () {
let jsonData = pm.response.json();
pm.expect(jsonData).to.be.an('object');
pm.expect(jsonData).to.have.property('nom');
pm.expect(jsonData).to.have.property('description');
});