Здравствуйте.
Я использую функцию для ожидания элемента вот такую
public function waitForElementPresent($locator, $expectedSec)
{
for ($second = 0; ; $second++) {
if ($second >= $expectedSec) $this->fail("timeout");
try {
if ($this->isElementPresent($locator)) break;
sleep(1);
} catch (Exception $e) {}
}
}
Но когда я запускаю его через Bromine, то во время ожидания isElementPresent($locator) выдает фейлы и в итоге весть тест считается зафейленым. Если не юзать try а if например, всеравно фейлится. Возможно ли переписать эту функцию так, что б он фейлился только после того как прошло определенное время?
WaitForElement фейлится php+Bromine
Автор SeleniumTester, 03 авг 2011 16:00
В теме одно сообщение
#1
Отправлено 03 августа 2011 - 16:00
#2
Отправлено 04 августа 2011 - 06:00
у Вас в коде закралась маленькая ошибочка (какой-то недочёт конвертации из Selenium IDE на PHP)
правильный вариант функции
правильный вариант функции
public function waitForElementPresent($locator, $expectedSec) { for ($second = 0; $second >= $expectedSec; $second++) { if ($second >= $expectedSec) $this->fail("timeout"); try { if ($this->isElementPresent($locator)) break; } catch (Exception $e) { } sleep(1); } }
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных