Intermédiaire30 min20 XP
Objectifs de cette leçon
- Générer des tests
- Spécifier les types
- Valider la couverture
Générer des tests 🧪
Pourquoi demander les tests à l'IA ?
L'IA excelle pour générer des tests car c'est une tâche structurée et répétitive.
Informations nécessaires
| Information | Pourquoi |
|---|---|
| Fonction à tester | Contexte |
| Cas limites | Complétude |
| Comportement attendu | Assertions |
| Framework | Format |
Exemple de prompt
CONTEXTE : Fonction validateEmail(email: string): boolean FRAMEWORK : Jest CAS LIMITES : 1. Email vide → false 2. Sans @ → false 3. Sans domaine → false 4. Avec caractères spéciaux → true 5. Email valide → true LIVRABLE : Fichier validateEmail.test.ts avec 10+ cas
Types de tests
| Type | Prompt |
|---|---|
| Unitaire | "Teste la fonction X avec les cas Y" |
| Intégration | "Teste l'interaction entre X et Y" |
| E2E | "Teste le parcours utilisateur complet" |
Résumé
- Fournissez la fonction et les cas limites
- Spécifiez le framework
- Demandez des tests positifs ET négatifs
- Vérifiez la couverture de code
Générer des tests
3 typesPrompt :
Écris des tests unitaires pour la fonction calculateDiscount(price, percentage) avec Jest. Test: cas normal, pourcentage 0%, prix négatif, pourcentage > 100%.
Résultat :
describe('calculateDiscount', () => {
it('calculates discount correctly', () => {
expect(calculateDiscount(100, 20)).toBe(80);
});
it('handles 0% discount', () => {
expect(calculateDiscount(100, 0)).toBe(100);
});
it('handles negative price', () => {
expect(calculateDiscount(-100, 20)).toBe(-80);
});
});