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

Breetonia

Регистрация: 17 апр 2012
Offline Активность: 29 апр 2013 23:39
-----

Мои темы

Задержка после выполнения каждой команды

28 июня 2012 - 08:50

Как можно быстро в селениуме сделать задержку между выполнениями последовательных команд,кроме фаиндЭлемент ?
Пока использую только Thread.sleep(1000);.Говорят,что он бажный,но лучше средства не нашел.Посоветуйте,пожалуйста,какой метод использовать
или поделитесь своими наработками ))).

Как работать с Ajax элементами ?

27 июня 2012 - 20:25

Фаирбаг не видит значение аякс элементов.getAttribute("value) и getText() возвращают совершенно не то,что нужно(либо текст по дефолту,либо empty).Что делать ? Компонент вроде Ext.formPanel,визуально данные видны в полях(визуально компонент напоминает форму).

ExtJS генерирует пробелыв классах ?!

27 июня 2012 - 11:58

Столнулся с такой *фичей*,по подозрению,экста - просматривая в фаирбаге код,наткнулся на элементы с пробелами в классах.
Предъявил претензии разработчиам,те показали,что их js скрипты и extjs скрипты абсолютно чисты,да и последние не позволяют очищать пробелы.Стрелки перевели на extJS.
Теперь хочу обратиться к вам - так ли это на самом деле ? В проекте будут теперь задавать айдишки почти каждому элементу : ).
Проблему выявил при составлении xPath запросов в FirePath.FirePath ввел меня в ступор ещё и тем,что стал выдавать странные результаты - при неоднократном нажатии на Enter
FirePath выдавал различные результат - то находил элемент,то нет,удаляя пробелы из xPath селектора о_О - и не важно,что ты передаешьв селеторе пробел,или не передаешь - если в коде содержатся атрибуты с пробелом(хоть одним),то он будет себя вести так,как описано выше.В общем,крайне раздражает такое поведение Firepath.
Как решить проблему ?

Проверка сабмита формы

27 июня 2012 - 07:04

Ситуация следующая:

Мне нужно написать тестовый метод,проверяющий,что кнопка сабмит нажата успешно(сообщение об ошибке не выходит в браузере).
Сами действия в эклипсе я программно воспроизвел,но после редиректа на внутреннюю страницу сайта(после авторизации),тестовый метод ждет и вылетает
по таймауту,установленному имплицитными ожиданиями.Мне этого не нужно.Мне нужно,чтобы выполнение метода прекращалось сразу после успешной авторизации и выполнялся assertTrue,но как мне проверить,что вход произошел ? После submit() я сразу оказываюсь авторизованным и selenium,как я писал выше,тупит и вываливается с ошибкой.Собственно,дальнейшее тестирование не представляется возможным.
Я решил сделать так: проверить хидер Location до сабмита и после сабмита.Если они отличаются,значит,редирект успешно произошел и я оказался успешно авторизован,но в селениуме я не нашел чего-либо,предусматривающего работу с хидерами или запросами/ответами.
Я так понимаю,что это нужно реализовать на Java,но тогда придется вообще забыть про Селениум,а реализовывать всё чуть ли не с нуля или использования готовых java libraries.Так что делать ?

P.S.: Первые два видеоурока Баранцева не дали ответа на поставленный вопрос.

Достать значение javascript переменной

25 июня 2012 - 13:43

Как это можно сделать в Selenium WebDriver

Пример:

Переменная х определена в трех разных js скриптах в одном документе,но в объектном браузере она видна только в одном экземпляре,да ещё и объявлена как null.
В javascript-e я видел,как ей присваивается в качестве значения целый массив.Вот,этот массив и нужен...Что делать ? Как его получить ?