Maison >interface Web >js tutoriel >Apprenez des tests de bout en bout avec des marionnetsteer
Ce tutoriel explore le monde des tests de logiciels et montre comment utiliser Puppeteer, une bibliothèque de nœuds, pour des tests efficaces de bout en bout des applications Web. Nous couvrirons différents types de tests, puis créerons un exemple pratique en utilisant une application de compteur simple.
Concepts clés:
Qu'est-ce que le marionnettiste?
marionnettiste propose une API de haut niveau pour interagir avec le chrome ou le chrome. Bien que principalement sans tête, il peut être configuré pour une expérience de navigateur complète.
Prérequis:
Ce tutoriel assume la familiarité avec JavaScript (ES6), Node.js et Yarn (un gestionnaire de packages). Les connaissances de base des marionnettistes sont utiles mais pas strictement requises. Le tutoriel utilise:
Introduction aux tests:
Le test valide la fonctionnalité de l'application et aide à identifier les bogues tôt. Les quatre types de test mentionnés ci-dessus forment une stratégie de test complète. Le «trophée de test» (illustré ci-dessous) représente visuellement la nature hiérarchique de ces tests.
Tests de bout en bout avec marionnettiste: un exemple pratique
Nous allons créer une application de compteur simple en utilisant create-react-app
puis la tester avec Puppeteer.
npx create-react-app e2e-puppeteer
cd e2e-puppeteer && yarn start
yarn add -D puppeteer
App.js
et App.css
pour créer un compteur avec des boutons incrément et décrément. App.test.js
pour vérifier la fonctionnalité du compteur (état initial, incrément, décrément). Ces tests utilisent page.waitForSelector
, page.$eval
, page.click
, et les affirmations pour vérifier le comportement de l'application. yarn test
Conclusion:
Ce tutoriel a fourni une introduction pratique aux tests de bout en bout à l'aide de marionnettiste. Les capacités de Puppeteer s'étendent au-delà des tests, ce qui en fait un outil précieux pour diverses tâches d'automatisation du navigateur. Le code complet est disponible sur GitHub (lien non fourni dans le texte d'origine, doit être ajouté si disponible). D'autres ressources sur les tests sont disponibles via SitePoint Premium (liens non fournis dans le texte d'origine, doit être ajouté si disponible).
FAQS:
Cette section répond aux questions courantes sur les marionnettistes, y compris son objectif, les différences par rapport aux autres outils, son utilisation dans l'automatisation et le grattage, le concept de navigateurs sans tête et sa compatibilité entre les navigateurs. (Les FAQ d'origine sont incluses dans la sortie.)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!