Зачем тестировать сайт?
Мы – агентство DIGIMATIX – занимаемся созданием, модернизацией и поддержкой сайтов для наших клиентов. Одним из этапов работы с сайтом является тестирование. Тестирование – это шаг, который стоит выполнять по завершении работ с сайтом, так как он позволяет найти ошибки, которые могут негативно повлиять на работу ресурса.
В этой статье мы расскажем, что такое тестирование и какие его виды бывают, а также разберемся, какое тестирование лучше: автоматизированное или ручное.
Что такое тестирование сайта?
Тестирование сайта – это проверка страниц и бизнес-логики проекта разными способами:
- проверкой качества страниц;
- тестированием скорости загрузки;
- проверкой отображения на разных устройствах и в браузерах;
- юзабилити-тестированием и другими.
Главная цель тестирования – убедиться, что сайт отвечает заявленным требованиям клиента, и выявить ошибки, которые могут негативно повлиять на работу ресурса.
За тестирование сайта отвечает выделенный специалист – QA-инженер. Он должен проверить проект от начала до конца, прежде чем пускать его в работу.
Обычно процесс тестирования идет параллельно с разработкой. QA-инженер подключается еще в момент создания технического задания и составляет план тестирования и тест-кейсы. По мере готовности верстки специалист тестирует и ее. После внедрения проекта QA-инженер производит тестирование функционала, бизнес-логики и проверяет готовый проект на соответствие техническому заданию.
Мы определились, зачем нужно тестирование сайта. Теперь рассмотрим виды тестирования.
Виды тестирования
Существует 5 основных видов тестирования:
QA-инженер должен определить стратегию тестирования проекта и при необходимости добавить дополнительные виды тестирования в план работ. Далее подробнее поговорим об основных видах тестирования.
Тестирование юзабилити прототипа сайта
Данное тестирование проводится еще на этапе прототипирования сайта. UX-дизайнер и QA-инженер проверяют, насколько пользователю удобно использовать ресурс. Тестирование отвечает на следующие вопросы:
- понятны ли основная цель сайта и его функционал;
- удобна ли навигация для пользователя;
- создается ли у пользователя положительное впечатление при использовании ресурса.
Сравнение сверстанных страниц с согласованными дизайн-макетами и тестирование верстки проекта
На втором этапе специалист соотносит «живые» и статические макеты. QA-инженер проверяет, правильно ли перенесены все элементы будущего сайта.
Например:
- наличие всех блоков и их расположение;
- стили и правила использования текстовых элементов: заголовки Н1-Н6, подзаголовки, нумерованные и маркированные списки, таблицы;
- цветовые стили функциональных и нефункциональных объектов;
- стили элементов взаимодействия и ввода-вывода информации: ссылки, кнопки, поля, таблицы, чекбоксы и радиокнопки.
Также на данном этапе осуществляется тестирование верстки проекта. Каждое устройство имеет свой тип разрешения экрана. Они стандартизированы, но их много. Поэтому прежде чем выпускать сайт в жизнь, необходимо протестировать его на основных разрешениях экрана. Во время проведения этого тестирования специалист проводит следующие типы работ:
- просмотр сайта с разных браузеров и их версий;
- просмотр правильности отображения страниц сайта на мониторах и экранах, имеющих разное разрешение;
- проверка правильности отображения всех элементов сайта в разных браузерах и во всех их версиях, а также на всех типах разрешения экрана.
Функциональное тестирование
На данном этапе в работу включаются заранее разработанные тест-кейсы, по ним специалист проводит тестирование сайта. Оно занимает большое количество времени, так как требует проверки каждого реализованного функционала проекта, а также все сценарии разветвленной бизнес-логики. Например: что будет, если не ввести все данные в форме обратной связи, меняется ли способ доставки и оплаты исходя из месторасположения? Есть определенные базовые вещи, которые QA-специалисту нужно проверять.
Например:
- тестирование пользовательских форм;
- тестирование навигации на соответствие и отсутствие неработающих ссылок;
- проверка работоспособности поиска, а также релевантности результатов;
- добавление, удаление, редактирование карточек товаров;
- тестирование поиска и покупки товара.
Нагрузочное тестирование
Цель этого тестирования заключается в том, чтобы проверить и предотвратить неожиданную остановку работы ресурса в часы пик. Тестирование проводится с помощью специальных программ. Если скорость загрузки при нагрузке остается на уровне требуемых показателей, то тестирование считается пройденным. Мы на своих проектах, например, используем jmeter, а вы?
Тестирование безопасности сайта
Цель данного тестирования – проверка сайта на уязвимость к различным видам атак. Для каждого вида сайта будут использованы разные виды вредоносных атак. Тестирование безопасности диагностирует пути взлома ресурса, дает понимание, насколько защищен ресурс и могут ли злоумышленники получить доступ к конфиденциальным данным клиентов.
Во время аудита безопасности тестируют:
- контроль доступа;
- механизмы обработки ошибок;
- конфигурацию сервера;
- диагностику аутентификации и другое.
А программу Acunetix Web Vulnerability Scanner мы используем для проведения тестирования безопасности.
Какое тестирование лучше: автоматизированное или ручное?
Существует множество видов тестирования, их подразделяют по подходам, целям, знанию системы. В данной статье мы сравним два популярных вида тестирования: автоматизированное и ручное. В случае автоматизированного тестирования QA-инженер с помощью специализированных программ разрабатывает тесты, которые впоследствии можно запускать в автоматическом режиме. В ручном тестировании специалист имитирует возможное поведение пользователя на сайте, программы не применяются.
Поговорим о преимуществах и недостатках каждого вида тестирования подробнее.
Преимущества и недостатки автоматизированного тестирования:
Преимущества:
- Отсутствие человеческого фактора: программа не допустит ошибки по невнимательности.
- Высокая скорость проверки. Программа за несколько минут может обработать тот же объем, на который у QA-инженера уйдет несколько часов.
- Автоматическое тестирование может проходить в нерабочее время по написанным сценариям, а в рабочее тестировщик обработает полученные результаты.
- Отчет о результатах проверки формируется автоматически.
Недостатки:
- На разработку сценариев тестирования уходит большое количество времени.
- Если в проекте меняется бизнес-логика и это затрагивает тесты, то их надо дорабатывать, что увеличивает количество потраченного времени.
- Для проведения автоматического тестирования у специалиста должна быть высокая квалификация.
- Автоматическое тестирование выполняется строго по правилам, поэтому неожиданные ошибки, которые нашел бы специалист, программа не увидит.
Преимущества и недостатки ручного тестирования
Преимущества:
- Специалист оценивает не только функционал сайта, но и дизайн, что позволяет найти и устранить возможные недочеты.
- Специалист может найти те ошибки, которые не нашла программа.
- В случае если ваш проект не требует постоянных доработок и внедрения нового функционала, то ручное тестирование позволит сэкономить время и уменьшит финансовые затраты.
Недостатки:
- Присутствует человеческий фактор и возможность допуска ошибки по невнимательности.
- Ручное тестирование занимает больше времени, чем автоматизированное, при условии, что сценарии тестирования уже написаны.
Лучший вариант тестирования определяется исходя из задач проекта и планов его развития.
Вместо вывода
Тестирование сайта – важный этап разработки. Для успешного ведения бизнеса в интернете клиенту нужен профессиональный, заточенный под его цели и задачи ресурс. Именно тестирование поможет еще до полноценного старта работы проекта найти и устранить проблемы и недочеты, связанные с его работой. А для гарантированного успеха стоит определять вариант тестирования исходя из целей и задач проекта.
Когда свой сайт в порядок приведёте по скорости?
Спасибо, что обратили внимание.
Мы для проверки скорости используем сервис GTMETRIX и он показывает хорошие показатели по скорости.
Насчет Google PageSpeed Insights, у нас на странице вставлены качественные фото и фоновое видео, от которых мы не готовы отказаться в пользу показателей.
"Тестирование безопасности" - Ага, понял. :)
Благодарим коллег за обратную связь и проведенный аудит.
Действительно на некоторых проектах наших клиентов наблюдается данная проблема и мы уже разбираемся в ситуации.
Именно этот пример еще раз подтверждает наши утверждения, что любой проект необходимо тестировать!
Что ж вы такой быстрый!) И сразу XSS! Надо ж было сначала поинтересоваться как происходит тестирование, более подробно)) А вы взяли и сразу карты вскрыли)))
Хочется добавить картинку, где тестировщик компании говорит, что сайт говно и его выкидывают из окна.
Привет. А скорость загрузки сайта точно важна?