Подтвердить что ты не робот

Как проверить цикл в Selenium IDE?

Я тестировал в Selenium IDE. Он довольно прост в использовании, и я создал с ним несколько тестовых примеров. Я искал Google, пытаясь найти способ повторить мои тесты автоматически. Я видел решение с gotolabel, в то время как циклы и т.д. Но я не мог заставить их работать. Может кто-нибудь дать мне совет о том, как цикл мой тест n раз, или цикл навсегда. Я ценю любую помощь.

4b9b3361

Ответ 1

Сделайте это:

Файл js предоставляет функции goto, gotoIf и while в Selenium IDE. В приведенном ниже примере показан простой цикл:

<tr>
    <td>getEval</td>
    <td>index = 0;</td>
    <td></td>
</tr>
<tr>
    <td>while</td>
    <td>index &lt; 10;</td>
    <td></td>
</tr>
<tr>
    <td>storeEval</td>
    <td>index</td>
    <td>value</td>
</tr>
<tr>
    <td>echo</td>
    <td>${value}</td>
    <td></td>
</tr>
<tr>
    <td>getEval</td>
    <td>index++;</td>
    <td></td>
</tr>
<tr>
    <td>endWhile</td>
    <td></td>
    <td></td>
</tr>

Ответ 2

как указано в ответе выше, установите расширение пользователя, которое добавит функции цикла для тестов Selenium IDE. В приведенном ниже примере показан простой цикл:

<tr>
<td>getEval</td>
<td>index = 0;</td>
<td></td>
</tr>
<tr>
<td>while</td>
<td>index &lt; 10;</td>
<td></td>
</tr>
<tr>
<td>storeEval</td>
<td>index</td>
<td>value</td>
</tr>
<tr>
<td>echo</td>
<td>${value}</td>
<td></td>
</tr>
<tr>
<td>getEval</td>
<td>index++;</td>
<td></td>
</tr>
<tr>
<td>endWhile</td>
<td></td>
<td></td>
</tr>

Ответ 3

Я новичок в Selenium (только начал использовать его несколько минут назад). После быстрого поиска Google для "петли селена" этот вопрос stackoverflow.com появился. Я сразу же прыгнул в расширение и начал использовать петли. Принятый ответ очень полезен. Тем не менее, я хотел указать что-то другое для других, которые являются новыми для селена (и спотыкаются на этой странице).

Я создал простой тест для простой веб-страницы. Я добавил цикл, чтобы тест выполнялся бесконечно (пока я не приостановил/не остановил его). Тем не менее, я заметил, что, делая это, счетчики Runs/Failures в графическом интерфейсе Selenium не увеличиваются с каждым циклом (я предполагаю, потому что один тестовый пример никогда не запускался до завершения, он просто зацикливался бесконечно). Поэтому я вырыл еще немного. Моя цель состояла в том, чтобы оставить один и тот же тест продолжительным (несколько часов или, возможно, на ночь), чтобы увидеть, были ли какие-либо сбои (я преследую прерывистую ошибку в данный момент).

Самый простой способ (для меня, после нескольких минут поиска/экспериментирования) было сделать следующее (вероятно, никаких плагинов не нужно, хотя подключенный плагин определенно полезен, если вы хотите запустить несколько небольших циклов в тестовом примере ):

  • сохранить тестовый файл в текстовом файле
  • сохранить тестовый набор в текстовый файл
  • откройте текстовый файл тестового набора в текстовом редакторе
  • скопируйте и вставьте тестовый пример несколько раз в тестовый набор (например, тысячу раз)
  • затем откройте тестовый пакет в Selenium и запустите тестовый пакет

Теперь у меня такой же простой тестовый набор работает много раз, и счетчики Runs/Failures увеличиваются, как ожидалось (без необходимости каких-либо циклов).

Ответ 4

Используйте плагин управления потоками для Firefox. После перезапуска Firefox используйте команду label, чтобы отметить точку в script и команду gotolabel, чтобы перейти туда.

Например:

enter image description here

Или, если вы предпочитаете видеть исходный код, это метка:

<tr>
    <td>label</td>
    <td>start</td>  
    <td></td>
</tr>

И это заставляет точку выполнения вернуться к метке:

<tr>
    <td>gotolabel</td>
    <td>start</td>
    <td></td>
</tr>

Существуют другие команды, которые вы можете увидеть на странице подключаемого модуля, и задокументированы в Проект Selenium IDE: проект управления потоком GitHub.

Ответ 5

Это образец для пользователя sampcop, чтобы автоматизировать жалобы на спам, используя метки и команды goto Label:

1 Вход на spamcop.net

Вариант использования спама 2-го использования

Запустите этот script

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head profile="http://selenium-ide.openqa.org/profiles/test-case">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="selenium.base" href="http://www.spamcop.net/sc" />
<title>testecase</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">testecase</td></tr>
</thead><tbody>

<tr>
    <td>label</td>
    <td>target1</td>
    <td></td>
</tr>
<tr>
    <td>clickAndWait</td>
    <td>link=Report Now</td>
    <td></td>
</tr>
<tr>
    <td>clickAndWait</td>
    <td>//input[@value='Send Spam Report(s) Now']</td>
    <td></td>
</tr>
<tr>
    <td>gotoLabel</td>
    <td>target1</td>
    <td></td>
</tr>
</tbody></table>
</body>
</html>

Ответ 6

Ваш файл тестового набора - это всего лишь HTML файл, поэтому выполните следующие действия:

<tr><td><a href="testCase1.html">testCase1</a></td></tr>
<tr><td><a href="sameStep.html">sameStep</a></td></tr>
<tr><td><a href="testCase2.html">testCase1</a></td></tr>
<tr><td><a href="sameStep.html">sameStep</a></td></tr>