як використовувати Selenium IDE зі сценаріями та командами (підтвердження, перевірка)
Ми будемо використовувати Mercury Веб-сайт Tours як наша веб-програма на тестуванні. Це онлайн-система бронювання квитків, яка містить усі елементи, необхідні для цього підручника. Його URL-адреса https://demo.guru99.com/test/newtours/, і це буде наша основна URL-адреса.
Давайте тепер створимо наш перший тестовий сценарій у Selenium IDE найпоширенішим способом – шляхом запису. Після цього ми виконаємо наш сценарій за допомогою функції відтворення.
Створіть сценарій шляхом запису
крок 1
- Запуск Firefox та Selenium ІДЕ.
- Введіть значення для нашої базової URL-адреси: https://demo.guru99.com/test/newtours/.
- Toggle Увімкніть кнопку «Запис» (якщо вона ще не ввімкнена за замовчуванням).
крок 2
In Firefox, перейдіть до https://demo.guru99.com/test/newtours/. Firefox має перевести вас на сторінку, схожу на наведену нижче. |
|
крок 3
|
|
крок 4
|
|
крок 5
|
|
крок 6
Toggle кнопку запису вимкніть, щоб зупинити запис. Тепер ваш сценарій має виглядати, як показано нижче. |
|
крок 7
Тепер, коли ми закінчили з тестовим сценарієм, ми збережемо його в тестовому випадку. У меню «Файл» виберіть «Зберегти тест». Крім того, ви можете просто натиснути Ctrl+S. |
|
крок 8
|
|
крок 9
Зверніть увагу, що файл було збережено як HTML. |
Крок 10) Повернутися до Selenium IDE та натисніть кнопку «Відтворити», щоб виконати весь сценарій. Selenium IDE повинна мати можливість бездоганно відтворювати все.
Введення в Selenium Команди – Selenese
- Команди Selenese можуть мати щонайбільше два параметри: ціль і значення.
- Параметри не потрібні постійно. Це залежить від того, скільки знадобиться команді.
Типи команд
Дії | Це команди, які безпосередньо взаємодіють з елементами сторінки.
Приклад: команда «click» є дією, оскільки ви безпосередньо взаємодієте з елементом, на якому клацаєте. Команда «type» також є дією, оскільки ви вводите значення в текстове поле, а текстове поле показує їх вам у відповідь. Між вами та текстовим полем існує двостороння взаємодія. |
---|---|
Аксесуари | Це команди, які дозволяють зберігати значення змінної.
Приклад: команда “storeTitle” є інструментом доступу, оскільки вона лише “читає” заголовок сторінки та зберігає його у змінній. Він не взаємодіє з жодним елементом на сторінці. |
Твердження | Це команди, які перевіряють виконання певної умови.
3 Типи тверджень
|
Стверджувати проти Перевіряти в Selenium
Загальні команди
Command | Кількість параметрів | Опис |
---|---|---|
відкрити | 0 - 2 | Відкриває сторінку за допомогою URL-адреси. |
click/clickAndWait | 1 | Натискає на вказаний елемент. |
type/typeKeys | 2 | Вводить послідовність символів. |
verifyTitle/assertTitle | 1 | Порівнює фактичний заголовок сторінки з очікуваним значенням. |
verifyTextPresent | 1 | Перевіряє, чи знайдено певний текст на сторінці. |
verifyElementPresent | 1 | Перевіряє наявність певного елемента. |
verifyTable | 2 | Порівнює вміст таблиці з очікуваними значеннями. |
waitForPageToLoad | 1 | Призупиняє виконання до повного завантаження сторінки. |
waitForElementPresent | 1 | Призупиняє виконання, доки вказаний елемент не стане присутнім. |
Створіть сценарій вручну за допомогою Firebug
Тепер ми відтворимо той самий тест вручну, ввівши команди. Цього разу нам потрібно буде використовувати Firebug.
крок 1
|
Крок 2: Клацніть на верхньому порожньому рядку в редакторі. |
Введіть «відкрити» в текстовому полі «Команда» та натисніть клавішу Enter. |
крок 3
|
крок 4
|
крок 5
|
Натисніть текстове поле «Ім’я користувача». Зверніть увагу, що Firebug автоматично показує вам HTML-код для цього елемента. |
крок 6 Зверніть увагу, що текстове поле «Ім’я користувача» не має ідентифікатора, але має атрибут NAME. Тому ми будемо використовувати його NAME як локатор. Скопіюйте значення NAME і вставте його на Target поле в Selenium ІДЕ.
Все ще в Target текстове поле, префікс «userName» з «name=», що вказує на те Selenium IDE має націлюватись на елемент, атрибут NAME якого має значення «userName». Введіть «invalidUN» у текстовому полі «Значення». Selenium IDE. Тепер ваш тестовий сценарій має виглядати, як на зображенні нижче. Ми закінчили з третьою командою. Примітка. Замість invalidUN ви можете ввести будь-який інший текстовий рядок. Але Selenium IDE чутлива до регістру, і ви вводите значення/атрибути так само, як у програмі. |
крок 7
|
крок 8
|
Крок 9: Збережіть тестовий приклад так само, як у попередньому розділі.
Використання кнопки «Знайти».
Кнопка Знайти в Selenium IDE використовується для перевірки того, що ми вклали в Target текстове поле дійсно є правильним елементом інтерфейсу користувача.
Скористаємося тестом Invalid_login, створеним у попередніх розділах. Натисніть будь-яку команду з a Target запис, скажімо, третя команда.
Натисніть кнопку Знайти. Зверніть увагу, що текстове поле «Ім’я користувача» всередині Mercury Сторінка турів на секунду підсвічується.
Це свідчить про те, що Selenium IDE вдалося правильно виявити очікуваний елемент і отримати доступ до нього. Якщо кнопка «Знайти» виділяла інший елемент або взагалі не виділила жодного елемента, тоді щось не так із вашим сценарієм.
Виконати команду
Це дозволяє вам виконувати будь-яку окрему команду без запуску всього тесту. Просто клацніть рядок, який ви хочете виконати, а потім натисніть «Дії > Виконати цю команду» на панелі меню або просто натисніть «X» на клавіатурі.
Крок 1) Переконайтеся, що ваш браузер увімкнено Mercury Домашня сторінка турів. Натисніть на команду, яку ви хочете виконати. У цьому прикладі натисніть «введіть | ім'я користувача | invalidUN».
Крок 2) Натисніть «X» на клавіатурі.
Крок 3) Зверніть увагу, що текстове поле для імені користувача заповнюється текстом «invalidUN»
Виконання команд таким чином сильно залежить від сторінки, яка Firefox зараз відображається. Це означає, що якщо ви спробуєте наведений вище приклад із відображенням домашньої сторінки Google Mercury Tours', то ваш крок буде невдалим, оскільки на домашній сторінці Google немає текстового поля з атрибутом «userName».
Початкова точка
Початкова точка – це індикатор, який говорить Selenium IDE, з яких рядків почнеться виконання. Його клавіша швидкого доступу — «S».
У наведеному вище прикладі відтворення розпочнеться з третього рядка (введіть | пароль | недійсний PW). Ви можете мати лише одну початкову точку в одному тестовому сценарії.
Початкова точка схожа на «Виконати команду» тим, що вони залежать від поточної сторінки. Початкова точка не вдасться, якщо ви перебуваєте на неправильній сторінці.
Точки зупинки
Точки зупинки - це індикатори, які говорять Selenium IDE, де автоматично призупинити тест. Комбінація клавіш — «B».
Жовте виділення означає, що поточний крок очікує на виконання. Це доводить це Selenium IDE призупинила виконання на цьому кроці. Ви можете мати кілька контрольних точок в одному тестовому випадку.
Крок
Це дозволяє вам виконувати наступні команди по черзі після призупинення тесту. Скористаємося сценарієм із попереднього розділу «Точки зупину».
Важливі речі, на які слід звернути увагу під час використання інших форматів у вихідному вигляді
Selenium IDE добре працює лише з HTML – інші формати все ще знаходяться в експериментальному режимі. це є НЕ бажано створювати або редагувати тести з використанням інших форматів у Source View, тому що потрібно ще багато працювати, щоб зробити його стабільним. Нижче наведено відомі помилки версії 1.9.1.
- Ви не зможете виконати відтворення або повернутися до перегляду таблиці, якщо не повернетеся до HTML.
- Єдиний спосіб безпечно додати команди до вихідного коду – це записати їх.
- Якщо ви зміните вихідний код вручну, він буде втрачений під час переходу до іншого формату.
- Хоча ви можете зберегти свій тестовий приклад у режимі перегляду джерела, Selenium IDE не зможе його відкрити.
Рекомендований спосіб конвертації тестів Selenese — це використання параметра «Експортувати тестовий приклад як…» у меню «Файл», а не через вихідний код.
Підсумки
- Тестові сценарії можна створити шляхом запису або введення команд і параметрів вручну.
- Під час створення сценаріїв вручну Firebug використовується для отримання локатора.
- Кнопка «Знайти» використовується для перевірки того, що команда має доступ до правильного елемента.
- Перегляд таблиці відображає тестовий сценарій у формі таблиці, тоді як перегляд вихідного коду відображає його у форматі HTML.
- Зміна перегляду вихідного коду на формат, відмінний від HTML, все ще є експериментальним.
- Не використовуйте вихідний код для створення тестів в інших форматах. Натомість використовуйте функції експорту.
- Параметри не потрібні постійно. Це залежить від команди.
- Є три типи команд:
- Дії – безпосередньо взаємодіє з елементами сторінки
- Accessors – «читає» властивість елемента і зберігає його в змінній
- Твердження – порівнює фактичне значення з очікуваним
- Твердження бувають трьох типів:
- Стверджувати – у разі невдачі наступні кроки більше не виконуються
- Перевірити – у разі невдачі наступні кроки все одно виконуються.
- WaitFor – проходить, якщо вказана умова стає істинною протягом періоду очікування; інакше він зазнає невдачі
- Найпоширеніші команди:
- відкрити
- click/clickAndWait
- type/typeKeys
- verifyTitle/assertTitle
- verifyTextPresent
- verifyElementPresent
- verifyTable
- waitForPageToLoad
- waitForElementPresent