Heim >Web-Frontend >js-Tutorial >Cypress Run ist ein beliebtes Test-Framework
Cypress ist ein beliebtes Test-Framework, das End-to-End-Tests für Webanwendungen vereinfacht. Einer der Kernbefehle, die Sie in Cypress verwenden, ist [cypress run](https://keploy.io/blog/community/comprehensive-guide-to-running-tests-with-cypress). Mit diesem Befehl können Sie Ihre Tests in einer Headless-Umgebung ausführen, was ihn ideal für kontinuierliche Integration und Test-Workflows macht. In diesem Beitrag erfahren Sie, wie Sie den Befehl „cypress run“ effektiv nutzen und sein volles Potenzial ausschöpfen können.
Bevor Sie Cypress Run verwenden, müssen Sie zunächst Cypress in Ihrem Projekt installieren. Wenn Sie Cypress noch nicht eingerichtet haben, ist der Einstieg ganz einfach. Führen Sie einfach den folgenden Befehl aus:
bash Copy code npm install cypress --save-dev
Dieser Befehl installiert Cypress als Entwicklungsabhängigkeit in Ihrem Projekt. Nach der Installation können Sie Cypress mit npx cypress open öffnen, um mit dem Schreiben Ihrer Tests zu beginnen. Aber um Tests in einem Headless-Browser (ohne GUI) auszuführen, verwenden wir den Befehl cypress run.
Der Befehl cypress run ist die einfachste Möglichkeit, Ihre Tests in einer Headless-Umgebung auszuführen. Um alle Ihre Tests auszuführen, führen Sie einfach Folgendes aus:
bash Copy code npx cypress run
Dadurch werden alle Tests, die sich standardmäßig in Ihrem Ordner /cypress/integration befinden, mit einem Headless-Browser (normalerweise Electron) ausgeführt. Die Tests werden im Hintergrund ausgeführt und Sie sehen die Ergebnisse in Ihrem Terminal.
Manchmal möchten Sie möglicherweise eine bestimmte Testdatei ausführen und nicht alle Tests. Dies ist besonders nützlich, wenn Sie an einer bestimmten Funktion arbeiten oder einen einzelnen Test debuggen. Sie können das Flag --spec gefolgt vom Pfad zur Testdatei verwenden:
bash Copy code npx cypress run --spec cypress/integration/example.spec.js
Dieser Befehl führt nur die Tests innerhalb der angegebenen Datei aus, was schnellere Iterationen ermöglicht.
Cypress unterstützt verschiedene Browser, darunter Chrome, Firefox und Electron. Standardmäßig führt Cypress Tests in Electron aus. Sie können jedoch auswählen, welchen Browser Sie verwenden möchten, indem Sie das Flag --browser gefolgt vom Browsernamen übergeben:
bash Copy code npx cypress run --browser chrome
Mit diesem Befehl werden Ihre Tests in Chrome ausgeführt. Sie können auch andere unterstützte Browser wie Firefox angeben:
bash Copy code npx cypress run --browser firefox
Diese Flexibilität trägt dazu bei, dass Ihre Anwendung in verschiedenen Browserumgebungen getestet wird, sodass sie browserübergreifend kompatibel ist.
Cypress bietet eine Funktion namens Cypress Dashboard, mit der Sie detaillierte Testergebnisse aufzeichnen und anzeigen können. Um Ihre Testergebnisse aufzuzeichnen, müssen Sie das Flag --record verwenden:
bash Copy code npm install cypress --save-dev
Wenn Sie das Flag --record verwenden, lädt Cypress die Testergebnisse automatisch in das Cypress-Dashboard hoch, wo Sie Protokolle, Screenshots und Videos Ihrer Tests anzeigen können.
Um Ihre Tests mit einem Projekt im Dashboard zu verknüpfen, müssen Sie ein Projekt in Ihrem Cypress Dashboard-Konto einrichten und den Datensatzschlüssel Ihres Projekts wie folgt angeben:
bash Copy code npx cypress run
Das Aufzeichnen Ihrer Tests ist nützlich, um den Testverlauf im Auge zu behalten und Einblicke in fehlgeschlagene oder fehlerhafte Tests zu gewinnen.
Bei großen Testsuiten kann die sequentielle Ausführung aller Tests zeitaufwändig sein. Cypress bietet die Möglichkeit, Tests zu gruppieren und zu parallelisieren, sodass sie gleichzeitig auf mehreren Computern ausgeführt werden können.
Sie können Ihre Tests mit dem Flag --group gruppieren:
bash Copy code npx cypress run --spec cypress/integration/example.spec.js
Darüber hinaus können Sie Ihre Tests parallel mit dem Flag --parallel ausführen, um die Ausführung zu beschleunigen:
bash Copy code npx cypress run --browser chrome
Durch die Parallelisierung von Tests kann die Zeit, die für die Ausführung einer großen Anzahl von Tests benötigt wird, drastisch reduziert werden, was für kontinuierliche Integrationspipelines von entscheidender Bedeutung ist.
Cypress ermöglicht Ihnen die Konfiguration von Umgebungsvariablen, um das Verhalten Ihrer Tests basierend auf verschiedenen Umgebungen zu ändern. Sie können Umgebungsvariablen mit der Option --env:
an Cypress übergebenbash Copy code npx cypress run --browser firefox
Dieser Befehl legt die Variablen apiUrl und env fest, auf die dann in Ihren Tests mit Cypress.env('apiUrl') zugegriffen werden kann. Diese Funktion ist nützlich, wenn Sie während der Ausführung Ihrer Tests zwischen verschiedenen Umgebungen (z. B. Staging, Produktion) wechseln müssen.
In einigen Fällen können Tests aufgrund von Zeitproblemen oder externen Abhängigkeiten zeitweise fehlschlagen. Um die Zuverlässigkeit Ihrer Tests zu verbessern, bietet Cypress eine Option zum Wiederholen fehlgeschlagener Tests.
Sie können die Anzahl der Wiederholungsversuche mit dem Flag --retries angeben:
bash Copy code npx cypress run --record
Dieser Befehl wiederholt alle fehlgeschlagenen Tests bis zu zwei Mal. Dies trägt dazu bei, die Auswirkungen schuppiger Tests zu reduzieren und stabilere Testergebnisse zu gewährleisten.
Die Integration des Befehls „cypress run“ in Ihre CI/CD-Pipelines (Continuous Integration und Continuous Delivery) ist für die Automatisierung des Testprozesses von entscheidender Bedeutung. Beliebte CI-Tools wie Jenkins, CircleCI, GitHub Actions und GitLab CI unterstützen die Ausführung von Cypress-Tests.
Hier ist ein Beispiel dafür, wie Sie eine einfache CI-Pipeline konfigurieren können, um Cypress-Tests mithilfe von GitHub-Aktionen auszuführen:
bash Copy code npx cypress run --record --key <your-dashboard-project-key>
Diese Konfiguration installiert Abhängigkeiten und führt Cypress-Tests in einem Headless-Browser aus. Außerdem werden die Testergebnisse im Cypress Dashboard aufgezeichnet.
Durch die Beherrschung des Befehls „cypress run“ können Entwickler Tests effizient ausführen, Ergebnisse aufzeichnen und Tests über mehrere Umgebungen hinweg skalieren. Unabhängig davon, ob Sie eine einzelne Testdatei ausführen oder Hunderte von Tests parallelisieren, bietet Cypress die Tools, die Sie zur Optimierung Ihrer Testabläufe benötigen. Durch die Integration von Cypress Run in Ihre CI/CD-Pipelines können Sie sicherstellen, dass Ihre Anwendungen immer getestet und für die Bereitstellung bereit sind.
Das obige ist der detaillierte Inhalt vonCypress Run ist ein beliebtes Test-Framework. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!