Как проверить просмотр и поиск созданных домов и квартир
Что проверяют
Умеете ли вы тестировать связку «создал, потом нашёл» целиком: от сохранения объекта до его появления в выдаче с правильными данными. Следом обычно спрашивают, как проверить фильтры и их комбинации, не написав тысячу кейсов.
Как отвечать
Уточните модель: дом содержит квартиры, у объектов есть статусы (черновик, опубликован, в архиве) и владельцы. Кто что видит, решает требование, и это первая группа проверок.
Просмотр:
- данные без искажений: всё, что ввели при создании, так же выглядит на карточке: адрес, площадь с дробной частью, цена с разделителями, фото в правильном порядке;
- связи: квартира открывается из карточки своего дома и не попадает к чужому, а что происходит с квартирами при удалении дома, описано и проверено;
- доступ: чужой черновик по прямой ссылке не открывается, несуществующий ID даёт понятную страницу 404.
Поиск и фильтры:
- появление в выдаче: новый объект находится сразу или через оговорённое время. Если поиск идёт по отдельному индексу вроде Elasticsearch, задержка индексации нормальна, но её величина должна быть известна;
- текст: регистр, частичное совпадение, «ё» и «е», пробелы по краям, спецсимволы, пустой запрос;
- диапазоны: цена и площадь на границах, включительно ли «от» и «до», что будет, если «от» больше «до»;
- комбинации: сочетания фильтров подбирайте попарным тестированием (pairwise), оно резко сокращает число кейсов и сохраняет покрытие всех пар значений;
- сортировка и пагинация: при переходе по страницам нет дублей и пропусков, счётчик «найдено» совпадает с реальным числом.
Тестовые данные удобнее создавать через API, а не руками в интерфейсе: быстро и воспроизводимо.
Где спотыкаются
Проверяют поиск на трёх объектах. Проблемы пагинации и сортировки видны только на десятках записей с одинаковыми значениями.
Забывают про удалённые и архивные объекты: они не должны всплывать ни в поиске, ни по старой ссылке, если требование не говорит иного.
Не отделяют задержку индексации от бага и заводят дефект «объект не находится», хотя через минуту он уже в выдаче.