имея javascript заставить тест Selenium провалиться - PullRequest
1 голос
/ 13 мая 2009

Есть ли способ для кода js заставить тестирование Selenium провалиться? Для (вероятно, плохого) примера, если бы у меня было следующее:

return document.getElementById('foo').innerHTML == 'hello'

Есть ли способ заставить команду runScript завершиться неудачно в зависимости от того, вернул ли js-код значение true или false? (Я знаю, что этот пример может использоваться другими командами Selenium, но я хотел найти более общее решение.)

Нужно ли мне учиться расширять Selenium для добавления другой команды?

Я также относительно новичок в Selenium, так что это то, что с помощью Selenium-rc решит?

Ответы [ 3 ]

3 голосов
/ 18 мая 2009

assertExpression даст вам то, что вы просите.

Например, следующая строка приведет к сбою теста, если упомянутое вами выражение JavaScript не будет иметь значение true.

<tr>
<td>assertExpression</td>
<td>javascript{this.browserbot.getCurrentWindow().document.getElementById('foo').innerHTML == 'hello'}</td>
<td>true</td>
</tr>
0 голосов
/ 13 июня 2009

Eval ( 'asdfklj;'); // Селен Хиты. Честно говоря, я никогда не использовал это сам. Нужно изучить это в ближайшее время, но я предполагаю, что это может привести к ошибкам JavaScript.

0 голосов
/ 13 мая 2009

Зависит от того, как вы хотите использовать селен. В Selense Suite есть вызовы для verifyText и т. Д. (Просто Google для Selense Suite и verifyText, waitForCondition). Если вы используете пульт дистанционного управления селен, например, Java, чем вы делаете утверждения в коде Java. С помощью пульта дистанционного управления вы отправляете скрипты на страницу и получаете то, что возвращает оценка кода. Сравнение / утверждение выполняется в клиенте java.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...