Cypress est un framework de test populaire qui simplifie les tests de bout en bout pour les applications Web. L'une des commandes principales que vous utiliserez dans Cypress est [cypress run](https://keploy.io/blog/community/comprehensive-guide-to-running-tests-with-cypress). Cette commande vous permet d'exécuter vos tests dans un environnement sans tête, ce qui la rend idéale pour les flux de travail d'intégration et de test continus. Dans cet article, nous explorerons comment utiliser efficacement la commande cypress run et libérer tout son potentiel.
Avant d'utiliser Cypress Run, vous devez d'abord installer Cypress dans votre projet. Si vous n’avez pas encore configuré Cypress, il est facile de commencer. Exécutez simplement la commande suivante :
bash Copy code npm install cypress --save-dev
Cette commande installe Cypress en tant que dépendance de développement dans votre projet. Une fois installé, vous pouvez ouvrir Cypress en utilisant npx cypress open pour commencer à écrire vos tests. Mais pour exécuter des tests dans un navigateur sans tête (sans interface graphique), nous utiliserons la commande cypress run.
La commande cypress run est le moyen le plus simple d'exécuter vos tests dans un environnement sans tête. Pour exécuter tous vos tests, exécutez simplement :
bash Copy code npx cypress run
Cela exécutera tous les tests situés dans votre dossier /cypress/integration par défaut, en utilisant un navigateur sans tête (généralement Electron). Les tests s'exécuteront en arrière-plan et vous verrez les résultats dans votre terminal.
Parfois, vous souhaiterez peut-être exécuter un fichier de test spécifique plutôt que tous les tests. Ceci est particulièrement utile lorsque vous travaillez sur une fonctionnalité spécifique ou déboguer un seul test. Vous pouvez utiliser l'indicateur --spec suivi du chemin d'accès au fichier de test :
bash Copy code npx cypress run --spec cypress/integration/example.spec.js
Cette commande exécutera uniquement les tests contenus dans le fichier spécifié, permettant des itérations plus rapides.
Cypress prend en charge différents navigateurs, notamment Chrome, Firefox et Electron. Par défaut, Cypress exécute des tests dans Electron. Cependant, vous pouvez choisir quel navigateur utiliser en passant l'indicateur --browser suivi du nom du navigateur :
bash Copy code npx cypress run --browser chrome
Cette commande exécutera vos tests dans Chrome. Vous pouvez également spécifier d'autres navigateurs pris en charge comme Firefox :
bash Copy code npx cypress run --browser firefox
Cette flexibilité permet de garantir que votre application est testée dans différents environnements de navigateur, ce qui la rend compatible avec tous les navigateurs.
Cypress fournit une fonctionnalité appelée Cypress Dashboard, qui vous permet d'enregistrer et d'afficher les résultats de tests détaillés. Pour enregistrer les résultats de votre test, vous devez utiliser l'indicateur --record :
bash Copy code npm install cypress --save-dev
Lorsque vous utilisez l'indicateur --record, Cypress télécharge automatiquement les résultats des tests sur le tableau de bord Cypress, où vous pouvez afficher les journaux, les captures d'écran et les vidéos de vos tests.
Pour lier vos tests à un projet dans le tableau de bord, vous devrez configurer un projet dans votre compte Cypress Dashboard et fournir la clé d'enregistrement de votre projet comme suit :
bash Copy code npx cypress run
L'enregistrement de vos tests est utile pour garder une trace de l'historique des tests et obtenir des informations sur les échecs ou les tests instables.
Lorsqu'il s'agit de grandes suites de tests, l'exécution séquentielle de tous les tests peut prendre beaucoup de temps. Cypress offre la possibilité de regrouper et de paralléliser les tests, leur permettant de s'exécuter simultanément sur plusieurs machines.
Vous pouvez regrouper vos tests en utilisant l'indicateur --group :
bash Copy code npx cypress run --spec cypress/integration/example.spec.js
De plus, vous pouvez exécuter vos tests en parallèle avec l'indicateur --parallel pour accélérer l'exécution :
bash Copy code npx cypress run --browser chrome
La parallélisation des tests peut réduire considérablement le temps nécessaire à l'exécution d'un grand nombre de tests, ce qui est crucial pour les pipelines d'intégration continue.
Cypress vous permet de configurer des variables d'environnement pour modifier le comportement de vos tests en fonction de différents environnements. Vous pouvez transmettre des variables d'environnement à Cypress en utilisant l'option --env :
bash Copy code npx cypress run --browser firefox
Cette commande définit les variables apiUrl et env, qui sont ensuite accessibles dans vos tests à l'aide de Cypress.env('apiUrl'). Cette fonctionnalité est utile lorsque vous devez basculer entre différents environnements (par exemple, préparation, production) lors de l'exécution de vos tests.
Dans certains cas, les tests peuvent échouer par intermittence en raison de problèmes de timing ou de dépendances externes. Pour améliorer la fiabilité de vos tests, Cypress propose une option permettant de réessayer les tests ayant échoué.
Vous pouvez spécifier le nombre de tentatives en utilisant l'indicateur --retries :
bash Copy code npx cypress run --record
Cette commande réessayera tous les tests ayant échoué jusqu'à deux fois. Cela permet de réduire l'impact des tests irréguliers et garantit des résultats de test plus stables.
L'intégration de la commande cypress run dans vos pipelines d'intégration continue et de livraison continue (CI/CD) est cruciale pour automatiser le processus de test. Les outils CI populaires tels que Jenkins, CircleCI, GitHub Actions et GitLab CI prennent en charge l'exécution de tests Cypress.
Voici un exemple de la façon dont vous pouvez configurer un pipeline CI de base pour exécuter des tests Cypress à l'aide des actions GitHub :
bash Copy code npx cypress run --record --key <your-dashboard-project-key>
Cette configuration installe les dépendances et exécute les tests Cypress dans un navigateur sans tête. Il enregistre également les résultats des tests sur le tableau de bord Cypress.
La maîtrise de la commande cypress run permet aux développeurs d'exécuter des tests efficacement, d'enregistrer les résultats et de faire évoluer les tests dans plusieurs environnements. Que vous exécutiez un seul fichier de test ou que vous parallélisiez des centaines de tests, Cypress fournit les outils dont vous avez besoin pour rationaliser vos flux de travail de test. En intégrant Cypress Run dans vos pipelines CI/CD, vous pouvez vous assurer que vos applications sont toujours testées et prêtes à être déployées.
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!