Проверка сайта. Внедрение автоматизированных тестов
Регулярное тестирование сайта необходимо, но слишком затратно. Мы расскажем как вышли из этой ситуации и наладили автоматическую проверку.
Введение
Ошибки - это неприятно. Никто не защищен от их возникновения. Они могут быть различного характера и свалиться на вашу голову в любой момент.
Как вариант, можно вручную периодически проверять функционал системы. Но делать это часто довольно накладно. Это требует постоянной ручной работы. В итоге проверка сайта будет носить слишком общий характер, либо стоить непомерно дорого.
Можно также надеяться на "авось" и решать проблемы по мере возникновения. Но при этом довольно высоки риски того, что что-то критическое отвалилось на сайте, а вы узнаете это только через неделю от случайного посетителя, написавшего в чат.
Хороший вариант - это сделать готовый тест в браузере и запускать его периодически.
Есть подобные программы, которые генерируют код тестов исходя из ручных сценариев, которые можно потом использовать для проведения этих тестов.
Автоматизация проверок ошибок на платформе Falcon Space
Мы решили включить подобный функционал в нашу платформу, это позволит проводить тестирование сайта для проверки базовых моментов работоспособности системы.
Сценарий действий задается через JSON, в котором перечисляются различные действия. Сейчас в нашем арсенале есть следующие действия:
- клик на элементе
- перейти на URL
- очистить поле
- получить значение элемента
- подождать N мс
- получить текущий URL
- получить title
- получить CSS свойство
- получить значение атрибута
- получить значение некоторого элемента
Также есть возможность настроить отправку сообщений о результатах тестов на почту. В системе можно посмотреть логи выполнения тестов более детально по командам.
Конечно, есть и обратная сторона тестов - это затраты на их создание и изменение по мере изменения интерфейса системы.
Мы постарались сделать максимально простым создание сценария, но все равно нужно знать азы CSS селекторов и JSON. При этом проверка работы проходит сразу после изменения теста (и в том же месте можно посмотреть лог выполнения теста).
Наша платформа заточена под людей, работающих с SQL, все управление тестами лежит в SQL процедурах. Таким образом, не требуются дополнительные навыки для администратора-программиста. Он сам сможет создавать тесты и поддерживать их.
Начать можно с проверки базовых элементов, например, регистрации в системе и входа по полученным данным. А далее постепенно расширять тестирование сайта по мере необходимости. Этим вы избавите себя от ежедневной или еженедельной проверки базовых элементов сайта.
Дополнительное применение данной возможности платформы - выполнение рутинных действий в интерфейсе. Особенно, если это внешний сайт, на котором вы должны сделать 100 однотипных действий. Можно запрограммировать, например, процесс создания объявлений.
Заключение
В целом с помощью этой функции мы планировали ускорить создание подобных тестов (за счет снижения сложности создания теста и скорости его проверки), а также повысить вероятность быстрого выявления ошибки на наших сайтах. Практика покажет, насколько приживется этот инструмент в реальной работе.
Документация к механизму автоматизированных тестов
Также смотрите статьи Как создать быстрый сайт и Как сделать удобный сайт
- Шаг 1. Создать концепт проекта
- Шаг 2. Получить оценку бюджета (КП)
- Шаг 3. Заключить договор
- Шаг 4. Создать совместно техническое задание
- Шаг 5. Поэтапная реализация проекта