Écrire des tests d'intégration pour une API
Créez des tests d'intégration API complets avec setup de base de données, authentification, CRUD et scénarios end-to-end.
Coller dans votre IA
Collez ce prompt dans ChatGPT, Claude ou Gemini et personnalisez les variables entre crochets.
Tu es un expert en assurance qualité logicielle spécialisé dans les tests d'intégration d'APIs. Je dois créer une suite de tests d'intégration complète pour mon API. **API à tester :** - Framework : [EX: Express, Fastify, NestJS, FastAPI] - Base de données : [EX: PostgreSQL avec Prisma, MongoDB avec Mongoose] - Authentification : [EX: JWT Bearer token, sessions, API key] - Endpoints principaux : [LISTER_LES_ENDPOINTS: ex. POST /auth/login, GET /users/:id, POST /orders] **Stack de test :** - Framework de test : [EX: Jest avec Supertest, Vitest, Mocha] - Base de données de test : [EX: base PostgreSQL dédiée, SQLite en mémoire, mock] - CI : [EX: GitHub Actions, GitLab CI] Crée une suite de tests d'intégration professionnelle incluant : 1. **Setup et teardown** : configuration de la base de données de test, seeding des fixtures nécessaires, nettoyage entre les tests. 2. **Authentification** : tests du flux complet d'authentification (login, token invalide, token expiré, refresh). 3. **CRUD complet** : tests de chaque endpoint avec cas de succès, validation des données invalides et gestion des erreurs HTTP. 4. **Autorisations** : tests que les endpoints protégés rejettent les requêtes non authentifiées et que les règles de permission sont respectées. 5. **Scénarios end-to-end** : un scénario complet simulant un parcours utilisateur réel (ex: créer un compte → se connecter → créer une ressource → la modifier → la supprimer). 6. **Tests de contrat** : validation que la structure des réponses JSON est conforme à la documentation API. 7. **Configuration CI** : job GitHub Actions pour exécuter les tests avec base de données PostgreSQL en service.
Pourquoi ce prompt fonctionne
<p>Ce prompt aborde les tests d'intégration dans leur dimension la plus difficile : la gestion de l'état de la base de données entre les tests. La stratégie de setup/teardown et de seeding est la clé d'une suite de tests déterministe qui ne produit pas de faux positifs dus à des données résiduelles d'un test précédent.</p><p>Les tests d'autorisation sont souvent négligés dans les suites de tests d'intégration, pourtant ils constituent la couche de sécurité la plus critique : vérifier que les endpoints protégés sont inaccessibles sans token valide, et que les permissions sont correctement appliquées (un utilisateur ne peut pas modifier les données d'un autre).</p><p>La demande de tests de contrat (validation de la structure JSON) est une pratique avancée qui prévient les breaking changes silencieux dans les APIs : si un champ est renommé ou supprimé, le test échoue immédiatement, alertant l'équipe avant que le changement n'atteigne les clients de l'API.</p>
Cas d'usage
Résultat attendu
Suite de tests d'intégration complète avec setup/teardown, tests d'authentification, CRUD, autorisations et configuration CI.
Formez-vous en profondeur
Découvrez le skill complet sur Prompt Guide pour maîtriser cette technique de A à Z.
Voir sur Prompt GuideTermes du glossaire
Prompts similaires
Apprendre les bases de Git pour débutants
Apprenez Git de zéro avec des explications imagées, des exemples concrets, un workflow pratique et un cheatsheet des commandes essentielles.
Définir une stratégie Git pour une équipe
Définissez une stratégie Git complète adaptée à votre équipe : branching model, conventions, code review et gestion des releases.
Configurer un pipeline CI/CD avec GitHub Actions
Configurez un pipeline CI/CD professionnel avec GitHub Actions couvrant tests, sécurité, build Docker et déploiement multi-environnements.
Créer un Dockerfile optimisé pour la production
Créez un Dockerfile multi-stage optimisé pour la production avec sécurité maximale, image légère et meilleures pratiques.