Добрый день!
Пишу тест для веб-приложения, использую библиотеку sikuli. Сперва загружаю IE с урлом методами selenium. Но приложение грузится долго, секунд 15, и работа sikuli-части начинается раньше загрузки, естественно не найдя нужный элемент. Какое ожидание куда добавить?
public class BeforeTest {
public static InternetExplorerDriver driver;
public static String baseUrl;
public static WebDriverBackedSelenium selenium;
@BeforeClass
public static void setUp() throws Exception {
System.setProperty("webdriver.ie.driver", "E:\\Soft\\IEDriverServer\\IEDriverServer.exe");
driver = new InternetExplorerDriver();
baseUrl = "http://***";
selenium = new WebDriverBackedSelenium(driver, baseUrl);
driver.get(baseUrl);
driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
}
@AfterClass
public static void tearDown() throws Exception {
selenium.stop();
}
public class Learning extends BeforeTest {
@Test
public void testpage() throws Exception {
Screen screen = new Screen();
Pattern username = new Pattern("E:\\My Work Docs\\Sikuli\\username.jpg");
Region window = screen.wait(username);
screen.wait(username);
window.type(username,"test");
}
}
Ожидание web-приложения, webdriver + sikuli
Автор do4_sfinksa, 05 фев 2013 13:38
Сообщений в теме: 4
#1
Отправлено 05 февраля 2013 - 13:38
#2
Отправлено 05 февраля 2013 - 14:44
а почему ты не хочешь чтоб сикули подождал 20 секунд пока появится какой-то определенный элемент приложения?
#3
Отправлено 05 февраля 2013 - 15:10
на сайте Сикули есть пример со скайпом, где он в цикле ждёт определённого события. ИЕ может загрузиться за 10 сек, а может за 50
#4
Отправлено 05 февраля 2013 - 15:16
Может, перед выполнением sikuli явно подождать, с помощью того же Selenium, пока элемент не появится через что-то вроде
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(30)); wait.Until((d) => { return d.FindElement(By.XPath("........")); });?
#5
Отправлено 06 февраля 2013 - 07:41
добавила Region window = screen.wait(username,20);
теперь всё работает. Не знала об этой возможности. Спасибо!
теперь всё работает. Не знала об этой возможности. Спасибо!
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных