e2e-testing-patterns
Créer des suites de tests end-to-end fiables
Les tests end-to-end détectent les bugs critiques avant les utilisateurs, mais les tests instables ralentissent le déploiement et érodent la confiance. Cette compétence enseigne des modèles éprouvés pour créer des suites de tests E2E rapides et fiables avec Playwright et Cypress qui améliorent la qualité du code sans ralentir votre équipe.
Télécharger le ZIP du skill
Importer dans Claude
Allez dans Paramètres → Capacités → Skills → Importer un skill
Activez et commencez à utiliser
Tester
Utilisation de "e2e-testing-patterns". Create a custom Cypress command for user login
Résultat attendu:
Généré une commande Cypress personnalisée qui accepte les paramètres email et mot de passe, navigue vers la page de connexion, remplit les identifiants utilisant les sélecteurs data-testid, clique sur le bouton de soumission et vérifie la redirection réussie vers le tableau de bord. Inclut les définitions de types TypeScript pour le support de l'autocomplétion IDE.
Utilisation de "e2e-testing-patterns". How do I make this test less flaky?
Résultat attendu:
Identifié trois sources d'instabilité : les attentes de timeout fixes doivent être remplacées par des attentes conditionnelles, les sélecteurs de classes CSS doivent utiliser des attributs data-testid, et les tests parallèles partagent un état via des variables globales. Fourni les modifications de code spécifiques avec waitForLoadState approprié, les sélecteurs basés sur les rôles et les fixtures de test isolées.
Utilisation de "e2e-testing-patterns". Set up visual regression testing with Playwright
Résultat attendu:
Créé un modèle de test de régression visuelle qui capture des captures d'écran de page entière, gère différentes tailles de viewport, exclut le contenu dynamique comme les timestamps et utilise des seuils de différence de pixels pour réduire les faux positifs. Inclut le workflow de génération des images de référence et les étapes d'intégration CI.
Audit de sécurité
SûrThis skill provides educational content for end-to-end testing patterns with Playwright and Cypress. All static findings are false positives: weak crypto detections are from filename patterns, backtick executions are code examples in documentation, environment variable access is legitimate test configuration, and hardcoded URLs are localhost test endpoints. No security risks identified.
Score de qualité
Ce que vous pouvez construire
Ingénieur QA créant l'automatisation des tests
Un ingénieur assurance qualité doit établir des normes de tests E2E pour un nouveau projet. Il utilise cette compétence pour générer des Page Object Models, configurer l'intégration CI/CD et implémenter des stratégies d'attente fiables qui réduisent l'instabilité des tests.
Développeur frontend testant les flux utilisateurs
Un développeur frontend souhaite ajouter des tests E2E pour les flux utilisateurs critiques comme l'authentification et le paiement. Il utilise cette compétence pour créer des modèles de simulation réseau, des fixtures personnalisées et des tests d'accessibilité qui détectent les régressions tôt.
Tech Lead établissant les normes de test
Un responsable technique doit établir les meilleures pratiques de tests E2E across plusieurs équipes. Il utilise cette compétence pour documenter les stratégies de sélecteurs, les modèles de tests parallèles et les approches de débogage qui améliorent la maintenabilité de la suite de tests.
Essayez ces prompts
Créer un Page Object Model pour une page de connexion avec les champs email, mot de passe et la gestion des erreurs utilisant Playwright
Revoir ce test et suggérer des corrections pour le comportement instable causé par des problèmes de timing et de conditions de course
Créer des modèles d'interception réseau pour simuler les échecs API et les cas limites pour une page de profil utilisateur
Concevoir une stratégie de sharding pour exécuter 200 tests E2E sur 4 workers CI avec une distribution optimale
Bonnes pratiques
- Utiliser des sélecteurs sémantiques comme getByRole et getByLabel au lieu de classes CSS pour créer des tests stables qui survivent aux refactorisations UI
- Implémenter des stratégies d'attente appropriées avec des attentes conditionnelles et des assertions plutôt que des timeouts fixes pour éliminer les tests instables
- Garder les tests indépendants avec des fixtures isolées et le nettoyage pour permettre l'exécution parallèle et les exécutions de test fiables
Éviter
- Utiliser des timeouts fixes comme waitForTimeout au lieu d'attendre des conditions spécifiques conduit à des tests peu fiables qui échouent de manière intermittente
- Tester les détails d'implémentation ou l'état interne au lieu du comportement visible par l'utilisateur crée des tests fragiles qui cassent avec le refactoring
- Partager l'état entre les tests ou dépendre de l'ordre d'exécution des tests empêche l'exécution parallèle et provoque des échecs en cascade