Взгляд из-за кулис: как тестировщик принимает интернет-магазин
Чек-лист функционального тестирования для владельца бизнеса
Эта статья от имени того, чья работа — ломать ваш сайт до того, как это сделают клиенты. Звучит жестоко? Возможно. Но в электронной коммерции каждый найденный мной баг — это сохраненные деньги и нервы.
Когда вы принимаете сайт от разработчиков, вы смотрите на него как владелец: «Красиво? Работает?». Я смотрю как тестировщик: «А что будет, если нажать сюда дважды? А если отключить интернет во время оплаты? А если ввести вместо цены буквы?».
Сегодня я расскажу, как проходит функциональная приемка интернет-магазина. Это не про дизайн и не про законы (хотя в Беларуси без них никуда), это про логику работы системы. Если вы готовитесь принимать сайт в 2026 году, сохраните этот гайд.
Философия тестировщика: «Счастливый путь» — это только начало
Разработчики часто показывают вам «Happy Path» (Счастливый путь): пользователь зашел, выбрал товар, оплатил, все прошло идеально.
Моя задача — проверить Negative Path (Негативный сценарий) и Edge Cases (Граничные случаи).
Правило №1: Не верьте на слово. Проверяйте всё своими руками.
Правило №2: Если баг воспроизводится один раз — это уже баг.
Правило №3: Тестируйте на тех устройствах, которыми пользуются ваши клиенты (в Беларуси это часто Android-смартфоны среднего сегмента и iPhone).
1. Каталог и карточка товара: основа витрины
Здесь клиент принимает решение о покупке. Ошибки тут смертельны для конверсии.
| Что тестируем | На что обратить внимание (Взгляд тестировщика) |
|---|---|
| Фильтры | Выберите все возможные комбинации. Что если выбрать «Цена от 1000 до 100»? Должна быть валидация. Что если фильтры не дают результатов? Должна быть страница «Ничего не найдено». |
| Сортировка | Проверьте «По цене (возрастание/убывание)». Часто бывает, что товары с одинаковой ценой «пляшут» или сортировка работает только на первой странице. |
| Наличие | Попробуйте добавить в корзину товар со статусом «Нет в наличии». Кнопка должна быть неактивна или менять текст на «Предзаказ». |
| Цены | Проверьте скидочные цены. Старая цена должна быть зачеркнута. Убедитесь, что везде валюта BYN. Нет ли копеек там, где их не должно быть? |
| Изображения | Попробуйте увеличить фото (зум). Работает ли галерея на мобильном (свайпы)? Что если у товара нет фото? Должна стоять заглушка. |
| Связанные товары | Проверьте логику блоков «С этим покупают». Не предлагаются ли товары из других категорий? |
2. Корзина: где живут деньги
Корзина — это самый критичный узел. Здесь мы пытаемся «сломать» логику расчета.
- Изменение количества: Добавьте 1 товар. Увеличьте до 99. Уменьшите до 0. Что происходит? (Должен удаляться или стоять минимум 1).
- Лимиты: Есть ли ограничение на максимальное количество одного товара на складе? Попробуйте ввести больше, чем есть. Система должна предупредить.
- Промокоды:
- Введите valid код — скидка применилась?
- Введите expired (просроченный) код — ошибка?
- Введите код для категории А на товар категории Б — сработает ли защита?
- Попробуйте ввести код дважды.
- Пересчет: Измените количество товаров. Пересчиталась ли итоговая сумма и стоимость доставки мгновенно (без перезагрузки страницы)?
- Сохранение: Положите товар в корзину, закройте браузер, вернитесь через час. Товар на месте? (Проверка сессий/cookies).
3. Оформление заказа и Оплата (Специфика Беларуси)
Это самый сложный этап интеграции. В 2026 году в Беларуси стандарты платежей высоки.
Сценарии тестирования оплаты:
- Успешная оплата: Карта принята → Статус заказа «Оплачен» → Клиент получил чек на email/SMS → Менеджер увидел заказ.
- Неуспешная оплата: Недостаточно средств → Система вернула пользователя в корзину → Статус заказа «Ожидает оплаты» → Товар зарезервирован (или нет, зависит от настроек).
- Прерывание оплаты: Начали платить → Закрыли вкладку банка → Вернулись в магазин. Какой статус? Не получилось ли дубля заказа?
- Повторная оплата: Попробуйте оплатить один заказ дважды. Система должна предотвратить это.
Интеграции:
- ЕРИП / bePaid / WebPay: Обязательно проведите тестовый платеж через каждую подключенную систему.
- Оплата при получении: Если есть такая опция, проверьте, чтобы она не требовала ввода карты онлайн.
- Юридические данные: На этапе оплаты должны еще раз мелькнуть условия оферты (галочка «Согласен»).
4. Доставка и Адреса
В Беларуси своя специфика адресации и служб доставки.
- Валидация телефона: Введите +375 (29) 123-45-67. А теперь попробуйте +375 (29) 123-45-678 (лишняя цифра) или номер России/Украины (если доставка только по РБ). Система должна пускать только корректные форматы.
- Расчет доставки:
- Выберите Минск → Курьер → Цена должна быть одной.
- Выберите Область → Район → Населенный пункт → Цена должна измениться или появиться сообщение «Доставка не осуществляется».
- Белпочта / СДЭК: Проверьте работу виджетов расчета. Не «виснет» ли сайт при запросе к API службы доставки?
- Бесплатная доставка: Если есть порог (например, от 100 BYN), добавьте товар на 99 BYN — доставка платная. Добавьте на 100 BYN — доставка бесплатная. Граница должна работать четко.
5. Личный кабинет и Регистрация
- Дубликаты: Попробуйте зарегистрироваться на email, который уже есть в базе. Должна быть ошибка.
- Восстановление пароля: Запросите ссылку. Перейдите по ней. Смените пароль. Попробуйте войти со старым паролем (не должно пустить).
- История заказов: Оформите заказ → Зайдите в ЛК → Проверьте, отображается ли заказ, его статус и состав.
- Редактирование данных: Смените телефон в профиле. Оформите новый заказ. Подтянулся ли новый телефон?
6. Уведомления и Формы
Клиент не должен гадать, что произошло.
Триггерные письма:
- Регистрация → Письмо «Добро пожаловать».
- Заказ создан → Письмо «Заказ №... принят».
- Статус изменен → Письмо «Заказ отправлен».
- Оплата прошла → Чек на email.
Проверка: Письма не должны попадать в СПАМ. Проверьте верстку писем на мобильном (часто там все «едет»).
SMS / Мессенджеры: Если заявлено уведомление в Viber/Telegram — проверьте доставку.
Форма обратной связи: Заполните все поля. Заполните только обязательные. Оставьте поля пустыми. Везде ли срабатывает валидация? Приходит ли заявка администратору?
7. Админ-панель: где работаете вы
Владельцы часто забывают тестировать админку, а зря. Это ваш рабочий инструмент.
- Создание заказа вручную: Попробуйте создать заказ за клиента (например, по телефону). Работает ли это удобно?
- Смена статусов: Переведите заказ из «Новый» в «В работе», затем в «Отправлен». Меняется ли статус у клиента в ЛК? Приходит ли уведомление?
- Управление товарами:
- Попробуйте изменить цену. Обновилась ли она на сайте мгновенно (или после кэширования)?
- Попробуйте скрыть товар (статус «Неактивен»). Исчез ли он из каталога?
- Импорт/Экспорт: Если заявлена выгрузка прайса — загрузите тестовый CSV/XML файл. Нет ли ошибок кодировки (кракозябр вместо букв)?
8. Негативное тестирование и «Поломки»
Вот здесь я обычно нахожу самые интересные баги. Попробуйте сделать то, что обычный пользователь не сделает:
- Двойной клик: Быстро нажмите кнопку «Купить» или «Оплатить» 5 раз подряд. Не создалось ли 5 одинаковых заказов?
- Кнопка «Назад»: Во время оплаты нажмите «Назад» в браузере. Не сломалась ли сессия?
- Прямые ссылки: Попробуйте зайти на страницу оформления заказа (/checkout) без товаров в корзине. Должен быть редирект в корзину.
- Скорость интернета: Включите в браузере эмуляцию «Slow 3G». Не «отваливается» ли AJAX-запрос при добавлении в корзину?
- Безопасность форм: Попробуйте ввести JavaScript код (<script>alert(1)</script>) в поле «Имя» или «Комментарий». Сайт не должен исполнять код (защита от XSS).
Как правильно сообщать об ошибках (Баг-репорт)
Если вы нашли проблему, не пишите разработчику: «Тут не работает».
Пишите как тестировщик:
- Заголовок: Кратко, например: «Ошибка оплаты через bePaid при использовании карты Белкарт».
- Шаги воспроизведения:
- Положить товар в корзину.
- Перейти в оформление.
- Выбрать оплату картой.
- Ввести данные карты Belkart.
- Ожидаемый результат: Переход на шлюз банка, успешная оплата.
- Фактический результат: Ошибка «Неверный формат карты», оплата не проходит.
- Окружение: iPhone 13, Safari, iOS 17, Минск, оператор А1.
- Скриншот/Видео: Обязательно приложите!
Финальный чек-лист функциональной приемки
Перед тем как подписать акт, пройдитесь по этому списку:
- Каталог: Фильтры, поиск, сортировка работают корректно.
- Товар: Цены в BYN, наличие отображается верно, фото грузятся.
- Корзина: Считает сумму, промокоды работают, товары сохраняются.
- Оформление: Валидация полей (телефон +375...), расчет доставки (Белпочта/Курьер).
- Оплата: Тестовый платеж прошел, чек пришел, статус заказа обновился.
- Уведомления: Письма клиенту и менеджеру приходят вовремя и без ошибок.
- Личный кабинет: История заказов видна, пароль восстанавливается.
- Админка: Удобно менять статусы, цены, остатки.
- Краш-тест: Двойные клики не создают дубли заказов, прямые ссылки защищены.
- Мобильная версия: Весь функционал доступен и удобен на смартфоне.
Совет напоследок
Не принимайте сайт в пятницу вечером. Примите его во вторник утром, чтобы у разработчиков было время исправить критические баги до выходных.
Помните: запуск сайта с багами — это нормально (идеального софта не бывает), но запуск сайта с багами в оплате и корзине — это преступление против вашего бизнеса.
Удачи с запуском! Пусть ваш магазин работает как швейцарские часы (или как надежный белорусский трактор).
- 2026-09-30
- 176
Другие новости
2026-09-30
139
2026-03-11
631
