Tests E2E sur les parcours critiques : 80% de couverture utile à 20% du coût
100% de coverage = mythe. 5-10 tests E2E sur les parcours qui rapportent l'argent = 80% des bugs critiques attrapés.
Les parcours à tester (toujours, dans cet ordre)
- Signup → onboarding → premier usage (acquisition)
- Login → action principale → logout (activation)
- Funnel de conversion (paiement, lead form, demo)
- Logique métier critique (calcul de prix, attribution, expiration)
- Admin actions destructrices (delete, refund, ban)
Stack 2026 : Playwright
test('lead form submits and creates row', async ({ page }) => {
await page.goto('/contact');
await page.fill('[name=email]', 'test@example.com');
await page.fill('[name=phone]', '0600000000');
await page.click('button[type=submit]');
await expect(page.getByText('Merci')).toBeVisible();
});Règles
- Tests isolés (chaque test crée et nettoie ses données)
- Base de test dédiée (jamais sur la prod)
- Run en CI sur chaque PR (parcours critiques) + nightly (tout)
- Screenshot + video sur échec → debug en 1 min
Anti-pattern : sélecteurs CSS fragiles
page.click('.btn-primary:nth-child(3)') = casse au 1er refacto. Préférer data-testid="submit-contact" (stable, intentionnel).
Anti-pattern : tester l'implémentation
E2E teste le comportement user, pas le code. Si le test échoue quand vous refacto sans changer le comportement → mauvais test. Bon test : échoue uniquement si le user-facing behavior change.
ROI
5 tests × 1 jour de setup = 5 jours d'investissement. 1 bug critique en prod = 2-5 jours de coût (hotfix + lost revenue + trust). Break-even à 1 bug évité.
Partager