2016-07-21 2 views
0

Я хотел бы проверить, есть ли элемент выхода из системы. Если она существует, я хочу, чтобы сделать выход из системы, нажав этот элемент:Webdriver.io: isExisting(). Then() не является функцией

browser.isExisting('.logout').then(function() { 
    browser.click('.logout'); 
}); 

Но это дает мне Uncaught TypeError: browser.isExisting(...).then is not a function -ошибка.

+0

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

+0

Да, это правильно – user3142695

ответ

1

Если вы используете версию < 4, вы хотите этого. http://webdriver.io/v3.4/api/utility/waitForExist.html

browser.waitForExist('.logout').then(function() { 
    browser.click('.logout'); 
}); 

Но если вы используете V4 +, все синхронные (http://webdriver.io/guide/getstarted/v4.html), и вам нужно будет переписать немного. http://webdriver.io/api/utility/waitForExist.html

Нечто подобное

var logout = browser.element('.logout'); 
logout.waitForExist(5000); 
browser.click('.logout'); 
0

Вы можете посмотреть здесь: http://webdriver.io/api/state/isExisting.html

client.isExisting(selector); 

Возвращает логическое значение. Так что ваш код должен выглядеть следующим образом:

browser.isExisting('.logout').then(function(exist) { 
    if (exist) { 
     browser.click('.logout'); 
    } 
}); 
Смежные вопросы