Абстрактно о том, зачем нужно тестирование сайта

Каждое явление, вещь и частица нашего мира запрограммирована  на стремление к совершенству. Мы, наделенные сознанием и разумом, можем развиваться еще эффективнее. Но при условиях с ограниченным бюджетом этот удивительный природный дар гаснет. Стремление быть лучше и делать лучше отходят на второй план, оставляя лишь желание экономить. На дизайне. На технологиях. На идее. На времени.  И как итог: провальный бизнес, непродуманный проект, неудачный сайт, неоправданные ожидания.

Эволюция-зла-песочница-334438

Человек, которого нет

Рецепт хорошего сайта прост. Это оригинальная, но логичная концепция, гармонично воплощенная в дизайне и технологиях. Если эти внешне простейшие пункты сделаны, значит, работа над сайтом закончена. Вернее, так, как правило, думает обыватель  — в нашем случае заказчик.

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

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

Именно поэтому существует еще одно звено цепочки, которое всегда скрыто под яркими переливами бриллиантов и изумрудов. Сделать сайт совершенным помогает тестировщик. Человек, о котором никто не помнит, но который прикрывает спины всех своих коллег. И именно за это компании готовы платить тестировщикам тогда, когда клиенты удивляются «а зачем нам тестирование сайта?».

shutterstock_184408286

Где конец работы, и где начало успеха

«Тестирование — это проверка на наличие очевидных ошибок и дефектов, которые могут возникнуть при использовании продукта рядовым пользователем. По сути, тестирование = обеспечение качества конечного продукта».

422282357

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

«Работы без ошибок не бывает. Ни у программистов, ни у дизайнеров, ни у верстальщиков».

Для рядового пользователя тестирование – это скучная техническая профессия, когда специалист копается в коде программиста. Или человек, который высасывает проблему из пальца. Но Юра явно не будет рад таким словам, сказанным в лицо или за спиной. Потому что тестирование — более емкий и творческий процесс, чем вы можете себе его представить.

«Тестирование – это не только ошибки в программном коде. Это еще проверка безопасности, юзабилити, соответствия ожиданий и реальности в техническом задании, дизайна, верстки и взгляд на проект со стороны неопытного пользователя».

Множество объектов для тестирования могли бы создать ощущение, что тестировщик заходит на сайт и начинает ломать его всеми доступными способами. Но это не соответствует реальности. Тестирование – отнюдь не хаотичный, а продуманный процесс, имеющий четкую структуру. Причем чем дальше по этапам тестирование уходит вглубь, тем дороже становится цена каждой ошибки.

111shutterstock_949377133

Этапы тестирования:

  1. Тестирование ТЗ. Проверка логики утверждений, двусмысленных формулировок, соответствия ожиданий заказчика и реальности в ТЗ.
  2. Тестирование дизайна. Проверка полей, отступов, шрифтов, цветов. Взгляд со стороны пользователя и эстетических соображений.
  3. Тестирование верстки. Проверка соответствия нарисованного макета с тем, что получается на выходе.
  4. Тестирование сайта. Общая проверка на адаптивность, кроссбраузерность, скорость работы, контент.
  5. Регрессионное тестирование. Тестирование уже проверенных участков исходного кода. Часто применяется к конкретным модулям.

Ошибка на этапе регрессионного тестирования стоит гораздо больше, чем, тестирование дизайна. И по этой же аналогии обнаруженные проблемы с адаптивностью могут повлиять на все, вплоть то ТЗ. Подобные ошибки влияют на практически все этапы, что были до этого. Именно поэтому даже после последнего, пятого этапа, тестирование не заканчивается. В большую игру вступает великое бета-тестирование.

В крупных компаниях бета-этап проводится с помощью всех сотрудников корпорации. В менее масштабных фирмах оценивать сайт с точки зрения обычного пользователя  берутся знакомые тестировщика.