Cypress ist ein leistungsstarkes Tool für End-to-End-Tests und bietet einen robusten Satz integrierter Befehle für die Interaktion mit Webanwendungen. Jedes Projekt hat jedoch einzigartige Anforderungen, die möglicherweise nicht vollständig durch den Standardbefehlssatz abgedeckt werden. Hier kommen benutzerdefinierte Befehle ins Spiel. Mit benutzerdefinierten Befehlen können Sie die Funktionalität von Cypress erweitern und Ihre Tests besser lesbar und wartbar machen. In diesem Beitrag erfahren Sie, wie Sie benutzerdefinierte Befehle in Cypress erstellen und verwenden, um Ihr Testautomatisierungs-Framework zu verbessern.
Benutzerdefinierte Befehle bieten mehrere Vorteile:
Bevor wir uns mit der Erstellung benutzerdefinierter Befehle befassen, richten wir Cypress ein, falls Sie dies noch nicht getan haben:
npm install cypress --save-dev
Öffnen Sie nach der Installation Cypress:
npx cypress open
Benutzerdefinierte Cypress-Befehle werden in der Datei cypress/support/commands.js definiert. Sehen wir uns einige Beispiele an, um zu sehen, wie Sie benutzerdefinierte Befehle erstellen und verwenden können.
Beispiel 1: Anmeldebefehl
Angenommen, Sie haben ein Anmeldeformular, mit dem Sie häufig interagieren müssen. Sie können einen benutzerdefinierten Befehl erstellen, um den Anmeldevorgang abzuwickeln:
// cypress/support/commands.js Cypress.Commands.add('login', (email, password) => { cy.visit('/login'); cy.get('input[name=email]').type(email); cy.get('input[name=password]').type(password); cy.get('button[type=submit]').click(); });
Jetzt können Sie den Login-Befehl in Ihren Tests verwenden:
// cypress/integration/login.spec.js describe('Login Tests', () => { it('Should login with valid credentials', () => { cy.login('[email protected]', 'password123'); cy.url().should('include', '/dashboard'); }); });
Beispiel 2: Benutzerdefinierter Befehl mit Behauptungen
Sie können Ihren Befehlen auch benutzerdefinierte Behauptungen hinzufügen. Erstellen wir einen Befehl, um zu prüfen, ob ein Element sichtbar ist und bestimmten Text enthält:
// cypress/support/commands.js Cypress.Commands.add('shouldBeVisibleWithText', (selector, text) => { cy.get(selector).should('be.visible').and('contain.text', text); });
Verwendung in einem Test:
// cypress/integration/visibility.spec.js describe('Visibility Tests', () => { it('Should display welcome message', () => { cy.visit('/home'); cy.shouldBeVisibleWithText('.welcome-message', 'Welcome to the Dashboard'); }); });
Benutzerdefinierte Befehle in Cypress bieten eine leistungsstarke Möglichkeit, die Funktionen des Frameworks zu erweitern und Ihre Tests wiederverwendbarer, wartbarer und lesbarer zu machen. Durch die Kapselung allgemeiner Aktionen und das Hinzufügen benutzerdefinierter Behauptungen können Sie Ihren Testautomatisierungsprozess optimieren und sich auf das Wesentliche konzentrieren: sicherzustellen, dass Ihre Anwendung einwandfrei funktioniert.
Beginnen Sie noch heute mit der Implementierung benutzerdefinierter Befehle in Ihren Cypress-Projekten und sehen Sie, welchen Unterschied sie in Ihrem Testworkflow machen können. Viel Spaß beim Testen!
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3