- •Введение
- •Организация процесса тестирования
- •Разработка тестовых мероприятий
- •3. Тестирование клиентской части веб-приложения
- •3.1 Тестирование совместимости
- •3.2 Тестирование адаптивности
- •3.3 Тестирование верстки
- •3.4. Технический аудит
- •4. Тестирование сетевых подключений
- •5. Определение элементов автоматизации тестирования на основе локаторов
- •Разработка сценария автоматизированного тестирования в Selenium ide
- •Применение искусственного интеллекта в тестировании
- •Заключение.
- •Список использованных источников.
5. Определение элементов автоматизации тестирования на основе локаторов
С помощью инструментов веб-разработчика (вкладка Elements) были определены 5 различных веб-элементов на странице с использованием CSS-локаторов и XPath, необходимых для дальнейшей автоматизации.
Были подобраны следующие уникальные локаторы:
Главный логотип (CSS): a.logo img
Пункт меню "Продукты" (XPath): //a[contains(text(), 'Продукты')]
Строка поиска (CSS): input[name="s"]
Заголовок первого уровня (XPath): //h1
Кнопка "Контакты" (CSS): .contact-btn
Поиск элементов осуществлялся через встроенную панель поиска DOM-дерева браузера. Результат успешного нахождения элемента по локатору представлен на рисунке 17.
Рис.
17. Нахождение веб-элемента с использованием
локатора
Разработка сценария автоматизированного тестирования в Selenium ide
Для автоматизации тестовых мероприятий использовано браузерное расширение Selenium IDE. В процессе разработки сценария была выявлена техническая особенность тестируемого ресурса: веб-приложение построено с использованием блоков конструктора Tilda (в частности, элемента t985__input для строки поиска). Встроенные JS-скрипты платформы перехватывают события ввода клавиатуры, из-за чего стандартная команда Selenium type или sendKeys завершается ошибкой n.createEvent(...).initKeyEvent is not a function.
В связи с этим конфликтом технологий, для выполнения требований по автоматизации (без инъекции кастомного JavaScript) был разработан альтернативный, стабильный сценарий дымового тестирования. Он базируется на безопасных навигационных элементах веб-приложения.
Разработанный автотест включает в себя открытие сайта, навигацию по внутренним разделам («Мероприятия», «Статьи и новости», «Проекты») и возврат на главную страницу через клик по логотипу компании. Проведенное тестирование является проверкой критического пути взаимодействия пользователя с контентом.
Шаги разработанного альтернативного сценария представлены в таблице 2.
Таблица 2 – Сценарий автоматизированного тестирования
№ |
Команда (Действие) |
Локатор / Значение |
Ожидаемый результат |
1 |
open |
https://energy.exponenta.ru/ |
Главная страница полностью загружена |
2 |
set window size |
1400x747 |
Установлен требуемый размер окна браузера |
3 |
click |
linkText=Мероприятия |
Осуществлен переход в раздел мероприятий |
4 |
click |
linkText=Статьи и новости |
Осуществлен переход в раздел новостей |
5 |
click |
linkText=Проекты |
Осуществлен переход в раздел проектов |
6 |
click |
css=.t228__imglogo (Логотип) |
Успешный возврат на главную страницу |
В ходе выполнения автотеста программный код был отлажен, все шаги успешно пройдены. Результаты выполнения сценария в среде Selenium IDE подтверждены скриншотами на рисунках 18, 19 и 20. Фрагмент программного кода автотеста вынесен в Приложение А.
Рис.
18. Сценарий автоматизированного
тестирования в Selenium IDE
Рис.
19. Отладка и выполнение сценария автотеста
Рис.
20. Лог успешного прохождения автотеста
