Automatisation d'API, de zéro à confiant · Leçon 1 sur 6

Le modèle mental HTTP & votre première collection Postman

Chaque test d'API commence par une question simple : qu'est-ce que j'envoie, et qu'est-ce qui devrait revenir ? Rendez cette image claire et les outils deviennent faciles.

Par Shahriyar · Mis à jour

L'idée, en une ligne

Une requête d'API est un message que vous envoyez à un serveur, et la réponse est sa réplique. Votre travail est de vérifier que la réplique est celle que vous attendiez.

Les méthodes — ce que vous demandez

Chaque méthode nomme votre intention. Il y en a cinq que vous rencontrerez constamment :

Deux mots sur ces méthodes reviennent souvent. Sûr signifie que la requête ne change rien sur le serveur — GET est sûr. Idempotent est un grand mot pour une idée simple : l'envoyer deux fois laisse le serveur dans le même état que l'envoyer une fois. GET, PUT et DELETE sont idempotents ; POST et PATCH ne le sont pas. C'est exactement pourquoi un POST réessayé peut créer un doublon — un bug classique à traquer.

Les codes de statut — ce qui est revenu

La réponse arrive avec un nombre qui vous dit comment ça s'est passé. Ils se regroupent en familles :

Les réponses portent aussi des en-têtes — de petites étiquettes de métadonnées, comme Content-Type (le format du corps) et Authorization (qui demande).

Voyez-le à l'œuvre

Commencez dans Postman, une app conviviale pour envoyer des requêtes à la main. Dans l'onglet Tests de chaque requête, vous écrivez un peu de JavaScript qui s'exécute après l'arrivée de la réponse et la vérifie.

▸ try it
// Postman Tests tab: this JS runs after the response arrives.
// POST /posts -> create a record, then save its new id.

pm.test("status is 201 Created", function () {
    pm.response.to.have.status(201);
});

pm.test("body echoes what we sent", function () {
    const body = pm.response.json();
    pm.expect(body.title).to.eql("smoke test");
});

// Save the new id so later requests can reuse it.
pm.environment.set("post_id", pm.response.json().id);
// base_url also lives in the environment: {{base_url}}/posts

Lisez-le de haut en bas : vous avez vérifié que le statut était 201, vérifié que la réponse contenait ce que vous aviez envoyé, puis rangé le nouvel id. Rien de plus mystérieux que ça.

Avancé — pourquoi un environnement compte

Un environnement est un petit sac de valeurs sauvegardées, comme l'URL de base et votre token. Parce que vos requêtes lisent depuis le sac au lieu de coder ces valeurs en dur, exactement la même collection peut tourner contre un serveur de dev aujourd'hui et un serveur de prod demain — vous échangez juste le sac. Cette réutilisation est ce qui transforme un tas de requêtes en une vraie suite.

Basé sur la référence des méthodes HTTP de MDN et le Postman Learning Center (Writing tests)

Toutes les leçons de Automatisation d'API, de zéro à confiant

  1. Le modèle mental HTTP & votre première collection Postman
  2. Recréez-le en code : requests + pytest avec état partagé
  3. Faites confiance à la forme : validation de schéma & test négatif
  4. Passer la porte : clés d'API, Bearer/JWT & OAuth2
  5. SQL pour testeurs : prouvez que l'API a vraiment écrit dans la BD
  6. Mocking & contrats : des tests rapides, hors-ligne, fiables