Транспортир - Как проверить, что элемент не виден - PullRequest
0 голосов
/ 15 января 2019

Этот вопрос тесно связан с решениями, приведенными в этом вопросе

В моем тестовом сценарии мне нужно перейти к сценарию входа и выйти из системы на случай, если браузер автоматически войдет в приложение. Итак, следуя решениям, представленным в вопросе Как создать условие в транспортире, когда элемент существует или нет , я создал этот сценарий:

 beforeEach(function () {
    browser.driver.manage().window().maximize();
    browser.get(globalVariables.loginMain);
    globalVariables.User_Menu_Dropdown.isDisplayed().then(function(Login_Menu) {

        if (Login_Menu) {

            globalVariables.User_Menu_Dropdown.click();
            browser.wait(globalVariables.until.presenceOf(globalVariables.logOut_Button), 3000, 'The Logout menu too long to appear in the DOM');
            globalVariables.logOut_Button.click();
            browser.wait(globalVariables.until.presenceOf(globalVariables.Email_Input_box), 3000, 'The User Input box too long to appear in the DOM');
        } else {

            console.log("the app is on the login page")//do nothing

        }

    });

Но когда я запускаю скрипт, я все равно получаю следующую ошибку "Failed: No element found using locator: By(css selector, img[class="img-thumb-xs mr-1 align-middle"])". Что я здесь не так делаю? Каков наилучший подход для достижения этого?

1 Ответ

0 голосов
/ 15 января 2019

вы можете использовать ExpectedConditions в вашем случае.

var EC = protractor.ExpectedConditions;
// Waits for the element with id 'abc' to be no longer visible on the dom.
browser.wait(EC.invisibilityOf($('#abc')), 5000);

или вы можете использовать условие not , которое приведет к тому же результату

var EC = protractor.ExpectedConditions;
// Waits for the element with id 'abc' to be no longer visible on the dom.
browser.wait(EC.not(EC.visibilityOf($('#abc'))), 5000);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...