Write comprehensive unit tests
Generate a comprehensive unit test suite covering nominal cases, edge cases, and errors with appropriate mocks.
Paste in your AI
Paste this prompt in ChatGPT, Claude or Gemini and customize the variables in brackets.
Tu es un expert en Test-Driven Development (TDD) et en assurance qualité logicielle. Je dois écrire des tests unitaires complets pour le code suivant écrit en [LANGAGE] avec le framework de test [EX: Jest, Pytest, JUnit] : ``` [COLLER_LE_CODE_À_TESTER] ``` **Contexte :** - Framework de test : [EX: Jest avec TypeScript, Pytest, JUnit 5] - Librairie de mock : [EX: jest.mock, unittest.mock, Mockito] - Couverture cible : [EX: 90% minimum] - Style de test : [EX: BDD avec describe/it, ou AAA (Arrange-Act-Assert)] Génère une suite de tests complète qui couvre : 1. **Cas nominaux** : les scénarios d'usage normal où tout fonctionne comme prévu. 2. **Cas limites** : valeurs nulles, chaînes vides, tableaux vides, nombres négatifs, valeurs maximales. 3. **Cas d'erreur** : exceptions attendues, erreurs réseau, timeouts, données malformées. 4. **Mocks et stubs** : mock des dépendances externes (base de données, APIs, services tiers) avec des implémentations réalistes. 5. **Tests asynchrones** : si le code est async, couvre les promesses résolues et rejetées. Pour chaque test, utilise des noms descriptifs au format 'should [comportement attendu] when [condition]'. Inclus un commentaire expliquant pourquoi chaque cas limite est important à tester.
Why this prompt works
<p>This prompt is effective because it requests systematic coverage according to the five most important test categories. By specifying the framework and mock library from the start, the AI produces directly usable code without requiring adaptation.</p><p>The imposed naming convention ('should [behavior] when [condition]') guarantees self-documented tests that also serve as living documentation of the expected code behavior. This is an essential practice in team projects.</p><p>The request for explanatory comments for edge cases transforms tests into a pedagogical tool, helping less experienced developers understand why certain scenarios must be tested, not just how.</p>
Use Cases
Expected Output
A complete unit test suite with nominal cases, edge cases, errors, mocks and descriptive names ready for execution.
Learn more
Check the full skill on Prompt Guide to master this technique from A to Z.
View on Prompt GuideGlossary Terms
Similar Prompts
Learn the basics of Git for beginners
Learn Git from scratch with illustrated explanations, concrete examples, a practical workflow and a cheatsheet of essential commands.
Implement robust error handling in Node.js
Create a professional Node.js error handling architecture with custom error classes, centralized middleware and monitoring.
Define a Git strategy for a team
Define a comprehensive Git strategy adapted to your team: branching model, conventions, code review and release management.
Write integration tests for an API
Create comprehensive API integration tests with database setup, authentication, CRUD and end-to-end scenarios.