Réutiliser des parties de requêtes ou de réponses
Cas d’utilisation
Vous testez les opérations CRUD (Create, Read, Update, Delete) pour votre ressource /planets.
Vous souhaitez créer une planète en postant sur /planets, puis vérifier que votre planète a été créée et est disponible.
Vous pouvez créer :
- un scénario Creation scenario dans le projet Star wars API avec une requête Create planet qui poste la nouvelle planète ;
- une deuxième requête Verify planet existence qui récupérera le nouvel identifiant de la planète à partir de la réponse de la première requête pour récupérer la planète créée sur /planets/{planetId}.
Si la réponse de votre première requête est :
{
"id": "9e5d2284-94ad-11e7-bbbc-773611cab8f7",
"name": "Tatooine",
"rotation_period": "23",
"orbital_period": "304",
"diameter": "10465",
"climate": "arid",
"gravity": "1 standard",
"terrain": "desert",
"population": "200000",
}
Alors vous pouvez tester la création de votre planète en créant un GET sur https://my-star-wars-api.com/planets/${"Star wars API"."Creation scenario"."Create planet"."response"."body"."id"} et en indiquant un code de réponse à 200, par exemple.
Éléments utilisables
Les requêtes sont structurées comme suit :
{
{request name}: {string},
"request": {
"method" : {string},
"uri" : {string},
"headers" : {
{header name} : {header value}
},
"query" : {
{query parameter name} : {query parameter value}
},
"body" : {string or object}
},
"response": {
"headers" : {object},
"status" : {
"message" : {string},
"code" : {number}
}
"body" : {string or object}
}
}
La réponse contient un objet JSON représentant la réponse HTTP au dernier appel de la requête.
Vous pouvez la requêter de la même façon qu'un objet JavaScript standard, à l'aide d'une notation pointée.
Cela signifie que vous pouvez référencer les éléments de la requête Get planets dans le projet Star-wars API comme suit :
- URI de la requête : ${"Star-wars API"."Get planets"."request"."uri"} ;
- Code de statut de la réponse : ${"Star-wars API"."Get planets"."response"."status"."code"} ;
- La valeur de l'en-tête de réponse Content-type : ${"Star-wars API"."Get planets"."response"."headers"."Content-type"} ;
- Attribut du corps de la réponse : id: ${"Star-wars API"."Get planets"."response"."body"."id"}.