Как проверить, не существует ли элемент, не получив ошибку кипариса? - PullRequest
0 голосов
/ 23 октября 2019

Я использую Cypress для тестирования веб-приложения и хочу выполнить некоторые команды Cypress после проверки, не выходит ли элемент.

Я пытался с этим, но Cypress покажет сообщение об ошибке, что элементне существует, и он остановит тест.

    // The user is not logged, so the "logout" button is not displayed
    if (!cy.get("a").contains("Logout")) { // <--Cypress will stop here
        // If "logout" button does not exist, then log in
        cy.get("a").contains("Login").click();
    }
    // continue with the test
    // ...

Я хочу проверить, не выходит ли элемент без сообщения об ошибке, есть ли способ приблизиться к этому без использования циклов или длительного ожидания?

Ответы [ 2 ]

0 голосов
/ 24 октября 2019

Это также может ответить на ваш вопрос.

0 голосов
/ 24 октября 2019

Это очень просто. В основном вам нужно использовать методы утверждения Cypress, то есть следует, и вы можете играть с ним. Ниже приведено рабочее решение, и вы можете его использовать.

cy.get(`.logout-button`).should('not.be.visible').then(condition => {
    if (condition) {
        cy.get("[data-qa='input-username']").type('abcd');
        cy.get("[data-qa='input-password']").type('abcd');
        cy.get('.button').click();
    }
});

Дайте мне знать, если у вас возникнут какие-либо проблемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...