P
💻DeveloppementIntermediateAll AIs

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

Writing tests for existing codeTDD trainingIncreasing code coverage

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 Guide