Учебники

72) Сценарии и команды IDE

Мы будем использовать веб-сайт Mercury Tours в качестве тестируемого веб-приложения. Это онлайн-система бронирования авиабилетов, которая содержит все элементы, необходимые для этого урока. Его URL-адрес http://demo.guru99.com/test/newtours/ , и это будет наш базовый URL-адрес.

Создать сценарий по записи

Давайте теперь создадим наш первый тестовый скрипт в Selenium IDE, используя самый распространенный метод — путем записи. После этого мы выполним наш скрипт, используя функцию воспроизведения.

Шаг 1

  • Запустите Firefox и Selenium IDE.
  • Введите значение для нашего базового URL:  http://demo.guru99.com/test/newtours/ .
  • Включите кнопку «Запись» (если она еще не включена по умолчанию).

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)
 

Шаг 2

В Firefox перейдите по ссылке http://demo.guru99.com/test/newtours/ . Firefox должен перейти на страницу, аналогичную показанной ниже.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 3

  • Щелкните правой кнопкой мыши на любом пустом месте на странице, как на логотипе Mercury Tours в левом верхнем углу. Это вызовет контекстное меню Selenium IDE. Примечание. Не нажимайте на гиперссылки на объекты или изображения.
  • Выберите «Показать доступные команды».
  • Затем выберите «assertTitle точный: Добро пожаловать: Mercury Tours». Это команда, которая проверяет правильность заголовка страницы.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 4

  • В текстовом поле «Имя пользователя» Mercury Tours введите неверное имя пользователя «invalidUNN».
  • В текстовом поле «Пароль» введите неверный пароль «invalidPWD».

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 5

  • Нажмите на кнопку «Войти». Firefox должен перенести вас на эту страницу.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 6

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

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 7

Теперь, когда мы закончили с нашим тестовым скриптом, мы сохраним его в тестовом примере. В меню File выберите «Save Test Case». Кроме того, вы можете просто нажать Ctrl + S.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 8

  • Выберите желаемое местоположение, а затем назовите « Тестовый случай» как «Invalid_login».
  • Нажмите кнопку «Сохранить».

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 9

Обратите внимание, что файл был сохранен как HTML.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 10

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

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Введение в команды Selenium — Selenese

  • Команды Selenese могут иметь максимум два параметра: цель и значение.
  • Параметры не обязательны все время. Это зависит от того, сколько нужно команде.

3 типа команд

действия

Это команды, которые напрямую взаимодействуют с элементами страницы.

Пример: команда «click» является действием, потому что вы напрямую взаимодействуете с элементом, на который нажимаете.

Команда «type» также является действием, поскольку вы помещаете значения в текстовое поле, а текстовое поле показывает их вам в ответ. Существует двустороннее взаимодействие между вами и текстовым полем.

Accessors

Это команды, которые позволяют вам хранить значения в переменной.

Пример: команда storeTitle является аксессором, потому что она только «читает» заголовок страницы и сохраняет его в переменной. Он не взаимодействует ни с одним элементом на странице.

Утверждения

Это команды, которые проверяют, выполняется ли определенное условие.

3 типа утверждений

  • Утверждать . При сбое команды assert тест останавливается немедленно.
  • Проверьте . При сбое команды «verify» Selenium IDE регистрирует этот сбой и продолжает выполнение теста.
  • WaitFor . Прежде чем перейти к следующей команде, команды waitFor сначала будут ожидать выполнения определенного условия.
    • Если условие становится истинным в течение периода ожидания, этап проходит.
    • Если условие не выполняется, шаг завершается неудачей. Ошибка регистрируется, и выполнение теста переходит к следующей команде.
    • По умолчанию значение тайм-аута установлено на 30 секунд. Вы можете изменить это в диалоговом окне Selenium IDE Options на вкладке General.

Утверждение против Проверки

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Общие команды

команда Количество параметров Описание
открытый 0 — 2

Открывает страницу, используя URL.

нажмите / clickAndWait 1

Клики по указанному элементу.

Тип / typeKeys 2

Типы последовательности символов.

verifyTitle / assertTitle 1

Сравнивает фактический заголовок страницы с ожидаемым значением.

verifyTextPresent 1

Проверяет, найден ли определенный текст на странице.

verifyElementPresent 1

Проверяет наличие определенного элемента.

verifyTable 2

Сравнивает содержимое таблицы с ожидаемыми значениями.

waitForPageToLoad 1

Приостанавливает выполнение до полной загрузки страницы.

waitForElementPresent 1

Приостанавливает выполнение до тех пор, пока указанный элемент не станет представленным.

Создать сценарий вручную с Firebug

Теперь мы заново создадим тот же тест, набрав команды. На этот раз нам нужно будет использовать Firebug.

Шаг 1

  • Откройте Firefox и Selenium IDE.
  • Введите базовый URL ( http://demo.guru99.com/test/newtours/ ).
  • Кнопка записи должна быть выключена.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 2: Нажмите на верхнюю пустую строку в редакторе.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Введите «open» в текстовое поле «Command» и нажмите Enter.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 3

  • Перейдите Firefox на наш базовый URL и активируйте Firebug
  • В панели редактора Selenium IDE выберите вторую строку (строку под командой «открыть») и создайте вторую команду, введя «assertTitle» в поле «Команда».
  • Не стесняйтесь использовать функцию автозаполнения.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 4

  • В Firebug разверните тег <head>, чтобы отобразить тег <title>.
  • Нажмите на значение тега <title> («Welcome: Mercury Tours») и вставьте его в поле «Цель» в редакторе.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 5

  • Чтобы создать третью команду, щелкните третью пустую строку в редакторе и введите «type» в текстовом поле «Command».
  • В Firebug нажмите кнопку «Осмотреть».

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Нажмите на текстовое поле Имя пользователя. Обратите внимание, что Firebug автоматически показывает вам код HTML для этого элемента.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 6

Обратите внимание, что в текстовом поле «Имя пользователя» нет идентификатора, но есть атрибут NAME. Поэтому мы будем использовать его ИМЯ в качестве локатора. Скопируйте значение NAME и вставьте его в поле Target в Selenium IDE.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Все еще в текстовом поле Target добавьте префикс «userName» с «name =», указывая, что Selenium IDE должен предназначаться для элемента, атрибут NAME которого — «userName».

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Введите «invalidUN» в текстовое поле «Значение» в Selenium IDE. Ваш тестовый скрипт должен выглядеть так, как показано ниже. Мы закончили с третьей командой. Примечание. Вместо invalidUN вы можете ввести любую другую текстовую строку. Но в Selenium IDE учитывается регистр, и вы вводите значения / атрибуты точно так же, как в приложении.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 7

  • Чтобы создать четвертую команду, введите «type» в поле «Command».
  • Снова, используйте кнопку «Проверить» Firebug, чтобы получить локатор для текстового поля «Пароль». 

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

  • Вставьте атрибут NAME («пароль») в поле «Цель» и добавьте к нему «name =»

  • Введите «invalidPW» в поле «Значение» в Selenium IDE. Ваш тестовый скрипт должен выглядеть так, как показано ниже.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 8

  • Для пятой команды введите «clickAndWait» в текстовое поле «Команда» в Selenium IDE.
  • Используйте кнопку «Проверить» Firebug, чтобы получить локатор для кнопки «Войти».

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

  • Вставьте значение атрибута NAME («login») в текстовое поле «Target» и добавьте к нему «name =».
  • Ваш тестовый скрипт должен выглядеть так, как показано ниже.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 9: Сохраните контрольный пример так же, как мы делали в предыдущем разделе.

Использование кнопки поиска

Кнопка «Найти» в Selenium IDE используется для проверки того, действительно ли то, что мы поместили в текстовое поле «Цель», является правильным элементом пользовательского интерфейса.

Давайте используем тестовый пример Invalid_login, который мы создали в предыдущих разделах. Нажмите на любую команду с записью Target, скажем, третьей командой.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Нажмите на кнопку Найти. Обратите внимание, что текстовое поле «Имя пользователя» на странице Mercury Tours на секунду подсвечивается.

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Это указывает на то, что Selenium IDE смогла правильно обнаружить и получить доступ к ожидаемому элементу. Если кнопка «Найти» выделяет другой элемент или вообще не содержит элемента, значит, в вашем скрипте что-то не так.

Выполнить команду

Это позволяет вам выполнить любую отдельную команду, не выполняя весь контрольный пример . Просто нажмите на строку, которую вы хотите выполнить, а затем либо нажмите «Действия> Выполнить эту команду» в строке меню, либо просто нажмите «X» на клавиатуре.

Шаг 1. Убедитесь, что ваш браузер находится на главной странице Mercury Tours. Нажмите на команду, которую вы хотите выполнить. В этом примере нажмите на строку «type | userName | invalidUN».

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Шаг 2. Нажмите «X» на клавиатуре.

Шаг 3. Обратите внимание, что текстовое поле для имени пользователя заполняется текстом «invalidUN»

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Выполнение команд таким способом сильно зависит от страницы, которую в данный момент отображает Firefox . Это означает, что если вы попробуете приведенный выше пример с главной страницей Google, отображаемой вместо Mercury Tours ‘, то ваш шаг завершится неудачей, поскольку на главной странице Google нет текстового поля с атрибутом «userName».

Точка отсчета

Начальная точка — это индикатор, который сообщает Selenium IDE, с каких строк начнется выполнение . Его сочетание клавиш «S».

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

В приведенном выше примере воспроизведение начнется с третьей строки (введите | password | invalidPW). Вы можете иметь только одну начальную точку в одном тестовом скрипте.

Начальная точка аналогична команде выполнения в том, что они зависят от отображаемой в данный момент страницы. Начальная точка потерпит неудачу, если вы находитесь не на той странице.

Контрольные точки

Точки останова — это индикаторы, которые указывают Selenium IDE, где автоматически приостанавливать тест. Сочетание клавиш «B».

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Желтое выделение означает, что текущий шаг находится в состоянии ожидания. Это доказывает, что Selenium IDE приостановил выполнение на этом шаге. Вы можете иметь несколько точек останова в одном тестовом случае.

шаг

Это позволяет вам выполнять последующие команды по одной после приостановки теста. Давайте воспользуемся сценарием из предыдущего раздела «Точки останова».

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Прежде чем нажать «Шаг».

Тестовый случай останавливается в строке «clickAndWait | login».

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

После нажатия «Шаг».

Строка «clickAndWait | login» запускается и делает паузу для следующей команды (verifyTitle | Sign-on: Mercury Tours).

Обратите внимание, что следующая строка приостановлена, хотя там нет точки останова. Это главная цель функции Step — она ​​выполняет последующие команды по одной, чтобы дать вам больше времени для проверки результатов после каждого шага.

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

Как использовать Selenium IDE со скриптами и командами (утверждения, действия)

Selenium IDE хорошо работает только с HTML — другие форматы все еще находятся в экспериментальном режиме . Это  НЕ рекомендуется  создавать и редактировать тесты с использованием других форматов в Source View , потому что есть еще много работы , необходимо , чтобы сделать ее более стабильной. Ниже приведены известные ошибки версии 1.9.1.

  • Вы не сможете ни воспроизвести, ни переключиться обратно на просмотр таблиц, если не вернетесь к HTML.
  • Единственный способ безопасно добавить команды в исходный код — записать их.
  • Когда вы изменяете исходный код вручную, все это будет потеряно при переключении на другой формат.
  • Несмотря на то, что вы можете сохранить свой тестовый пример в режиме просмотра исходного кода, Selenium IDE не сможет его открыть.

Рекомендуемый способ преобразования тестов Selenese — использовать опцию «Export Test Case As …» в меню «Файл», а не в представлении «Исходный код».

Резюме

  • Тестовые сценарии могут быть созданы путем записи или ввода команд и параметров вручную.
  • При создании сценариев вручную Firebug используется для получения локатора.
  • Кнопка «Найти» используется для проверки того, что команда может получить доступ к нужному элементу.
  • В табличном представлении тестовый скрипт отображается в виде таблицы, а в исходном представлении — в формате HTML.
  • Изменение исходного представления в не-HTML формат все еще экспериментально.
  • Не используйте представление исходного кода при создании тестов в других форматах. Вместо этого используйте функции экспорта.
  • Параметры не обязательны все время. Это зависит от команды.
  • Существует три типа команд:
    • Действия — напрямую взаимодействует с элементами страницы
    • Аксессоры — «читает» свойство элемента и сохраняет его в переменной
    • Утверждения — сравнивает фактическое значение с ожидаемым
  • Утверждения имеют три типа:
    • Утвердить — при неудаче последующие шаги больше не выполняются
    • Проверить — при неудаче все последующие шаги все еще выполняются.
    • WaitFor — проходит, если указанное условие становится истинным в течение периода ожидания; в противном случае это не удастся
  • Наиболее распространенные команды:
    • открытый
    • нажмите / clickAndWait
    • Тип / typeKeys
    • verifyTitle / assertTitle
    • verifyTextPresent
    • verifyElementPresent
    • verifyTable
    • waitForPageToLoad
    • waitForElementPresent