Как сократить матрицу конфигураций
Вопрос
Приложение нужно проверить на 5 браузерах, 4 ОС, 3 языках и 2 темах оформления. Это 120 конфигураций. Как сократишь объём, не потеряв в качестве?
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
Посчитать полный перебор и понять, что он не по силам
Взять аналитику: какие конфигурации реально у пользователей, отрезать мёртвые
Задать ограничения: Safari только на macOS и iOS
Pairwise генератором: нижняя граница 5 × 4 = 20 тестов вместо 120
Добавить вручную рискованные сочетания и основные конфигурации пользователей
Регулярно пересматривать матрицу по свежей аналитике
Что могут спросить следом
- Что pairwise не найдёт?
- Как обосновать сокращение менеджеру, если потом найдут баг в редкой конфигурации?
Разбор
Полный перебор это 120 конфигураций, вручную нереально. Сначала смотрю аналитику: какие браузеры и ОС реально у наших пользователей, и убираю то, чего у нас почти нет. Затем ограничения: Safari бывает только на macOS и iOS, значит, Safari на Windows из матрицы выпадает. На оставшиеся параметры строю pairwise генератором вроде PICT с ограничениями. Нижняя граница 5 на 4, то есть 20 тестов, в 6 раз меньше. Сверху добавляю вручную самые популярные конфигурации и известные рискованные сочетания, например правосторонний язык и узкий экран. Риск, что баг проявится только на тройке параметров, остаётся, я его проговариваю с командой заранее.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.