Перейти к содержимому

kotor

Регистрация: 05 июл 2011
Offline Активность: 26 дек 2012 11:52
-----

Мои темы

android driver in Thucydides

26 декабря 2012 - 09:53

Добрый день коллеги,

У меня возник вопрос относительно возможности использования android драйвера в Thucydides. Как известно, драйвер этот инициализируется неявно. С помощью аннотации (или при запуске мавеном) у нас есть возможность задать его тип. Основная проблема заключается в том, что мне нужно найти способ инициализировать андроид драйвер, а кроме этого указать кастомный url, как в случае с WebDriver:
WebDriver driver = new AndroidDriver("http://localhost:9090/wd/hub");

Попытался его инициализировать таким образом (для начала):
@Managed(uniqueSession = true, driver = "android")
    public WebDriver driver;

Но фреймеворк выбросил исключение, говорящее о том, что он не знает этот драйвер: net.thucydides.core.webdriver.UnsupportedDriverException: Unsupported browser type: android

Кто сталкивался с подобной проблемой?

Заранее благодарю за ответы.

Работа awt.robot в фоновом режиме

27 февраля 2012 - 17:59

Добрый день!

На данный момент занимаюсь автоматизацией тестирования графического приложения. Соответственно, для решения задач, связанных с графикой, приходиться работать с низкоуровневыми операциями. Для этих целей использую класс java.awt.robot. Когда писал и отлаживал тесты на локальной машине с активным в момент прогона тестов браузером проблем абсолютно никаких не возникало и все работало должным образом.

В процессе настройки CI столкнулся с такой проблемой:
После билда (используем TeamCity в качестве CI сервера) получаем интересную картину – тесты падают при обращении к классу Robot. Т.е. все, что до этого делает webdriver, выполняется правильно.
Подскажите, пожалуйста, каким образом можно решить эту проблему?
Возможно, кто-то знает альтернативу роботу? Чтобы класс мог работать с низкоуровневыми операциями, но при этом, мог выполнять их в фоне.
Всем спасибо.

Selenium webdriver + TestNG + Logs

13 февраля 2012 - 17:54

Здравствуйте!

Для логов использую Reporter.log из org.testng. Во время выполнения тесткейсов с логированием никаких проблем нет. Возникла проблема с логированием ошибок в методе с аннотацией @AfterMethod. В одном из обсуждений данной проблем нашел вот это:

The logs are indexed by methods, and since the (current) reports
only display the test methods in the main view, anything logged in a method
that's not a test method won't appear there.


http://groups.google...27719b7581aec1b

Вот код моего метода:

@AfterMethod
public void tearDown(ITestResult result) throws Exception {
if(!result.isSuccess())
{
Reporter.log("Some text");
}
driver.close();
}

Решение с обходом данной проблемы существует. Хочу найти возможность сделать его более изящным и разместить логирование ошибок в этом методе.

Кто-нибудь сталкивался с подобной проблемой? Есть ли способ писать логи именно в этом методе?

Всем спасибо!

Перехват событий страницы в Selenium WebDriver

09 февраля 2012 - 07:55

Добрый день!

Проблема заключается в том, чтобы найти способ перехватить какое-то кастомное событие в Selenium. Пример события jquery в тестируемом приложении:

$('#vectorOverlay').on('dataLoaded', function () {// some code};

Собственно, мне требуется только знать, что событие 'dataLoaded' наступило. Пробовал делать executeScript и executeAsyncScript - не помогло. Либо я что-то делаю неправильно, либо такая функциональность в selenium'e не поддерживается. У кого какие соображения по этому поводу? Заранее благодарю.

p.s. воркэраунд на это дело есть и он работает, но хотелось бы разобраться именно в обработке подобных событий.

Работа с FlexGrid

12 января 2012 - 15:14

Добрый день.

При работе с FlexGrid возникли проблемы. Во время перебора элементов строки, часть ее элементов определяются как элементы следующей строки (хотя в приложении они отображаются как одна строка). Самое интересное, что строка ниже абсолютно пустая, а элементы верхней строки определяются таким же образом, как они отображаются в реальной гриде (т.е. правильно). Изначально я хотел работать с гридой как с матрицей. Т.е. при нахождении нужного элемента, определял его строку и далее проверял каждую ячейку этой строки на соответствие входящим параметрам. Для получения нужной ячейки и ее значения использовал метод TextMatrix(row, col). Из описанной выше проблемы можно сделать вывод, что работать с гридой как с матрицей не представляется возможным (либо я что-то делаю не верно). Задача состоит в том, чтобы найти соответствие содержимого конкретной строки входящим параметрам. Подскажите, пожалуйста, каким образом это можно корректно сделать? Способ не имеет значения - либо что-то изменить в моем подходе, либо использовать иной подход (например, какие-то функции поиска по содержимому строки и т.д.)

Заранее благодарю за ответы.