Подскажите Пожалуйста как правильно использовать WebDriverWait вместе с #page-object !
не могу понять как оформить класс для ожидания! Ведь в WebDriverWait необходимо непосредственно указывать путь к элементу, а в методологии PageObject все элементы инициализируются при создании обекта!
Если что извините за неправильную формулировку! я новичок в этом!
Спасибо за помощь!
Спасибо Вам Огромное за ответ! я пишу на c#, приложение в win form! я не использую NUnit!
Это так для информации! Забыл в описании написать!
вот пример кода
class Login_Page
{
[FindsBy(How = How.Id, Using = ("user-phone"))]
public IWebElement phone_field;
[FindsBy(How = How.XPath, Using = ".//*[@id='auth-form']/button[3]")]
public IWebElement login_submit;
public Login_Page(IWebDriver browser)
{
PageFactory.InitElements(browser, this);
}
}
В c# не помогу, но концепция такая - описываете BaseTest, в котором собираете базовые метода, собственно setUp и tearDown, а последнующие тесты наследуете от BaseTest, где в свою очередь будет вам и драйвер, и ожидание.
нет, неправильно. Классы тестов от BaseTest, а классы страниц от BasePage, это как пример. Тест - это тест, а страница - это страница. Не путайте руки и ноги )))
Значит мне необходимо создать еще два класса один BasePage который будет наследоваться от Pages и второй BaseTest от которого будет наследоваться непосредственно Тест!
Всю действия работы с элементами страницы мне необходимо описать в BasePage!
А всю логику непосредственно в Тесте!
я правильно все понял?
Извините за настойчивость! Просто реально ко всему сам дохожу, а спросить не у кого вообще! Спасибо!
Слушал уже) но думаю надо еще раз!) у меня просто совсем другой проект! и мне как то тяжело сопоставить! Но это скорее от недостатка опыта и знаний! В Общем Спасибо вам за помощь)
@Sashuteak, подход к ожиданиям в вашем коде может быть разным. Зависит от вашего уровня владения ООП, вижена и целей. Что касается WebDriverWait, могу порекомендовать вам, для начала, объявить его в BasePage классе и в дальнейшем использовать в методах страниц наследников. Таким образом, вам не придется заботится об ожиданиях при написании тест скриптов. Ожидания будут инкапсулированы в функциональные методы работы со страницей.