P
💻DeveloppementIntermediateAll AIs

Automatically Generate Unit Tests with AI

Automatically generate an exhaustive unit test suite covering nominal cases, edge cases, and error cases for any source code.

Paste in your AI

Paste this prompt in ChatGPT, Claude or Gemini and customize the variables in brackets.

Tu es un ingénieur QA senior spécialisé en tests automatisés. Génère une suite complète de tests unitaires pour le code suivant écrit en [LANGAGE_DE_PROGRAMMATION] :

```
[CODE_SOURCE]
```

Contexte du projet : [DESCRIPTION_DU_PROJET]
Framework de test à utiliser : [FRAMEWORK_DE_TEST]

Pour chaque fonction ou méthode présente dans le code, génère des tests couvrant :

1. **Cas nominaux** : comportement attendu avec des entrées valides typiques
2. **Cas limites** : valeurs aux frontières (zéro, chaîne vide, liste vide, valeurs maximales)
3. **Cas d'erreur** : entrées invalides, null/undefined, types incorrects, exceptions attendues
4. **Cas de régression** : scénarios susceptibles de casser lors de refactoring

Pour chaque test :
- Utilise la convention de nommage : `test_<methode>_<scenario>_<resultat_attendu>`
- Applique le pattern AAA (Arrange, Act, Assert) avec des commentaires séparant chaque section
- Ajoute des messages d'assertion explicites décrivant l'échec
- Utilise des fixtures ou des mocks si des dépendances externes sont impliquées

Après les tests, fournis :
- Un tableau récapitulatif du taux de couverture estimé par fonction
- Les cas non testables automatiquement (nécessitant des tests d'intégration)
- Des suggestions pour améliorer la testabilité du code source si nécessaire

Why this prompt works

<p>This prompt transforms AI into an expert QA engineer to produce professional-quality unit tests. By providing your source code and desired test framework, you get a complete suite covering essential scenarios: normal operation, boundary values, and error handling.</p><p>For optimal results, <strong>paste the actual code</strong> rather than a description. Specify the test framework (<strong>pytest</strong>, <strong>Jest</strong>, <strong>JUnit</strong>, <strong>PHPUnit</strong>, etc.) to get directly usable syntax. The AAA pattern (Arrange, Act, Assert) structures each test in a readable and maintainable way.</p><p>Adapt the prompt to your needs: add minimum coverage constraints, request <strong>mocks</strong> for API or database calls, or specify your naming conventions. The final coverage table helps identify uncovered areas and prioritize complementary integration tests.</p>

Use Cases

Quickly generate tests for legacy code without existing coverageCreate a test suite before a major refactoring to prevent regressionsComplete test coverage on critical functions identified by an auditTrain junior developers in testing best practices by showing concrete examples

Expected Output

A complete ready-to-use unit test suite in the specified framework, with explicit naming, AAA pattern, coverage of nominal, edge, and error cases, accompanied by an estimated coverage table and improvement recommendations.

Learn more

Check the full skill on Prompt Guide to master this technique from A to Z.

View on Prompt Guide

📬 Get new prompts every week

Join our newsletter and never miss a prompt.

Similar Prompts

💻DeveloppementIntermediateGemini

Create a CLI Tool with Node.js

Create a professional Node.js CLI tool with Commander.js, Inquirer, visual feedback, and npm publishing.

2329
💻DeveloppementBeginnerAll AIs

Document Code with JSDoc/TSDoc

Generate professional and complete JSDoc/TSDoc documentation for your functions and classes with concrete examples.

1730
💻DeveloppementIntermediateGemini

Create a Python Automation Script

Create a professional Python automation script with CLI configuration, structured logging, error handling, and tests.

2426
💻DeveloppementAdvancedAll AIs

Analyze and Optimize Algorithmic Complexity

Analyze the Big O complexity of your algorithms and optimize them with appropriate data structures and more efficient algorithms.

4026