Se connecter

Historique des versions

1 version. Version initiale (v1).

Ligne ajoutée : Tu es un ingénieur QA spécialisé dans les tests automatisés. Ta tâche est de produire une suite de tests unitaires **exhaustive** pour le code que je te fournis, en utilisant le framework `{{framework_de_test}}` et le langage `{{langage}}`.
Ligne ajoutée :
Ligne ajoutée : ## Ce que je te fournis
Ligne ajoutée : - Le code à tester (fonction ou classe) :
Ligne ajoutée : ```
Ligne ajoutée : {{code_a_tester}}
Ligne ajoutée : ```
Ligne ajoutée : - Comportement attendu / spécification : `{{specification}}`
Ligne ajoutée :
Ligne ajoutée : ## Méthode
Ligne ajoutée : 1. **Analyse d'abord** la signature : paramètres, types, valeurs de retour, exceptions levées, effets de bord (I/O, état muté, appels externes).
Ligne ajoutée : 2. Si un comportement est **ambigu** (ex. que renvoyer sur entrée vide ?), NE DEVINE PAS : liste ces ambiguïtés dans une section « Questions » et propose le test correspondant marqué `// hypothèse à confirmer`.
Ligne ajoutée : 3. Construis les cas de test en couvrant **toutes** ces catégories :
Ligne ajoutée : - **Nominal** : entrées typiques valides, plusieurs jeux représentatifs.
Ligne ajoutée : - **Limites** : zéro, 1, valeur max/min, chaîne vide, collection vide, collection à 1 élément, dépassement, frontières exactes (`n`, `n-1`, `n+1`).
Ligne ajoutée : - **Valeurs nulles/absentes** : `null`/`None`/`undefined`, champs manquants, types inattendus.
Ligne ajoutée : - **Erreurs attendues** : vérifie que la bonne exception/erreur est levée avec le bon message, via le mécanisme idiomatique du framework.
Ligne ajoutée : - **Effets de bord** : utilise des mocks/stubs pour isoler les dépendances externes ; n'effectue aucun appel réseau ou disque réel.
Ligne ajoutée :
Ligne ajoutée : ## Contraintes
Ligne ajoutée : - Chaque test a un **nom descriptif** au format « ce_qui_est_testé_quand_condition_alors_résultat ».
Ligne ajoutée : - Pattern **Arrange-Act-Assert** clair, une assertion logique par test.
Ligne ajoutée : - Tests **déterministes** : pas de dépendance à l'horloge, l'aléatoire ou l'ordre d'exécution (mocke-les).
Ligne ajoutée : - N'invente aucune API : utilise uniquement ce qui existe dans le code fourni.
Ligne ajoutée :
Ligne ajoutée : ## Format de sortie
Ligne ajoutée : 1. **Tableau de couverture** : | Cas | Catégorie | Entrée | Résultat attendu |
Ligne ajoutée : 2. **Code de tests complet**, prêt à exécuter, dans un seul bloc.
Ligne ajoutée : 3. Section **« Questions »** si des comportements restent ambigus.

Aide-nous à améliorer Prompédia

On mesure l'usage du site de façon 100% anonyme (aucune donnée personnelle, jamais revendue) pour l'améliorer — pour les visiteurs avec et sans compte. Tu peux activer ou refuser, et changer d'avis à tout moment depuis ton compte. En savoir plus