2012-01-19 2 views
9

может ли пользователь вводить ввод вручную во время работы сценария IDE селена? Для примера. Если есть поле имени, мы можем открыть окно ввода каждый раз, когда запускается скрипт, чтобы пользователь мог указать свой ввод для поля имени?Ручной ввод от пользователя во время работы сценария Selenium IDE

Позвольте мне знать, является ли это возможно или нет ..

Если да, то пожалуйста, предложите мне решение.

Заранее спасибо

ответ

16

Вы можете использовать следующий скрипт для вызова яваскрипта строки для того, чтобы получить значение

<tr> 
    <td>storeEval</td> 
    <td>javascript{prompt(&quot;Please enter your FirstName&quot;)}</td> 
    <td>firstName</td> 
</tr> 

Затем доступа к значению является случай использования ${firstName}

0

Вы могли бы использовать технику предложил here которая использует Selenium WebDriver и в Java BufferedReader. Я не думаю, что он может быть адаптирован для Selenium IDE, но техника должна отлично работать с Selenium RC.

Основная идея:

  • Issue Селен команда до того момента, когда вы хотите, чтобы захватить ввод данных пользователя.
  • Вызвать следующий код для ввода пользовательского ввода в буферный файл.

    BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); reader.readLine();

  • Продолжить Selenium команды

(Обратите внимание, если вы используете C#, есть обсуждение here о том, как использовать Console.In.ReadLine(); вместо BufferedReader).

0

Поскольку вы специально спросили о Selenium IDE, ответ отрицательный. Но вы можете приостановить сценарий и позволить пользователю вводить имя, а затем продолжить сценарий. Я слышал о людях, использующих эту технику для обработки CAPTCHA, которые, конечно, нелегко автоматизировать.

+0

Да, вы правы .. я попробую это решение .. спасибо –

0

лишь незначительные изменения в ответ Стивен Binns , Я бегу Selenium IDE 2.5.0 и мой тест выглядит следующим образом:

<tr> 
    <td>store</td> 
    <td>javascript{prompt(&quot;password&quot;)}</td> 
    <td>password</td> 
</tr> 

Без JavaScript {} это не вызовет.

0

Предлагаемое решение отлично подходит для селеном IDE (проверено на 2.5)

<tr> 
    <td>store</td> 
    <td>javascript{prompt(&quot;password&quot;)}</td> 
    <td>password</td> 
</tr> 
1

В Selenium IDE 2.8.0 работает: Capture тест сеанса ввода логина и пароля. Отредактируйте команду для каждого и измените ее с «type» на «waitForText» и удалите значения в полях «Значение», ранее сохраненных для входа и пароля. Повторно запустите сохраненный тестовый скрипт из среды IDE.

+0

Так как мне нравится принятое решение, лучше получить полностью запутанный пароль. – JuanitoMint

0

Использование темы.Сон (20000); Это закроет все на 20 секунд, и вы можете ввести любые поля, которые хотите ввести вручную за этот период времени