Техническом найме

Примеры вопросов QA-тестировщика: что спрашивать на технических интервью

ClarityHire Team(Editorial)5 min read

Почему стандартные вопросы QA не работают при найме

Большинство вопросов на интервью QA попадают в две ловушки: они либо настолько общие ("В чём разница между тестированием и QA?"), что любой, кто прошёл сертификационный экзамен, может на них ответить, либо настолько специфичны для вашего стека технологий, что проверяют знание фреймворка, а не умение думать. Кандидаты, которые запоминают терминологию тестирования, звучат компетентно. А те, кто действительно находит проблемы в ПО и улучшает процессы, остаются незамеченными.

Хорошие вопросы QA измеряют стратегию тестирования, а не терминологию. Они раскрывают, что кандидаты на самом деле делают, когда у них нет готового плана тестирования. Структурированные оценки QA и автоматизации тестирования закрывают обе бреши, оценивая кандидатов на реальной работе по поиску дефектов вместо проверки словарного запаса.

Примерный вопрос #1: Сценарий с отчётом об ошибке

"Вы тестируете процесс оформления покупки в интернет-магазине. Платёжный шлюз иногда принимает дублирующиеся транзакции — тот же ID заказа, та же сумма, в течение 5 секунд. Это происходит примерно в одном случае из 50. Расскажите, как вы будете это исследовать и документировать."

Что вы измеряете:

  • Задают ли они уточняющие вопросы (какой способ оплаты? какой браузер? условия сети)?
  • Различают ли они воспроизведение ошибки, её корневую причину и область охвата (это в их коде или в коде платёжного шлюза)?
  • Могут ли они сформулировать тестовый случай, который её поймает снова?
  • Будут ли они эскалировать проблему или попытаются воспроизвести её сами в первую очередь?

Это показывает, думают ли они как инженеры (корневая причина, область охвата, профилактика) или просто как репортёры (симптом, скриншот, тикет).

Примерный вопрос #2: Компромисс при автоматизации

"У вас есть набор тестов, который выполняется 2 часа полностью. Ваша команда запускает его раз в день. Коллега предлагает автоматизировать UI-поток для загрузки изображений — примерно 40 строк Selenium и 15 минут техническом обслуживания в квартал. Вы это сделаете? Расскажите о вашей логике."

Что вы измеряете:

  • Думают ли они о ROI (стоимость автоматизации против стоимости повторного ручного тестирования)?
  • Знают ли они, когда автоматизация — это затраты, а не эффективность?
  • Могут ли они честно оценить нагрузку на обслуживание?
  • Рассматривают ли они хрупкость тестов и ложные срабатывания?

Кандидаты, которые говорят "да, автоматизируйте всё" или "нет, UI-тесты ненадёжны", упускают суть. Правильный ответ обычно звучит как "всё зависит от того, что это ловит и как часто ломается".

Примерный вопрос #3: Задача на дизайн тестирования

"Мы разрабатываем функцию, которая экспортирует данные пользователя в CSV. Файл может содержать от 10 до 100 000 строк. Что вы будете тестировать? Что вы не будете тестировать и почему?"

Что вы измеряете:

  • Могут ли они расставить приоритеты (формат CSV, граничные случаи с количеством строк, специальные символы) вместо шума (имеет ли значение цвет кнопки)?
  • Знают ли они, что стоит автоматизировать, а что проверять выборочно?
  • Могут ли они объяснить риск (утечка данных, повреждение форматирования) в отличие от предпочтения?

Хорошие QA-инженеры безжалостны в определении области охвата. Они не тестируют всё; они тестируют то, что может повредить бизнесу.

Примерный вопрос #4: Риск регрессии

"Ваша команда только что провела рефакторинг запросов к базе данных на странице профиля пользователя. Изменений схемы не было, только очистка кода. Каша ваша стратегия тестирования? Какой у вас уровень уверенности?"

Что вы измеряете:

  • Хотят ли они запустить полный набор регрессионного тестирования или сначала критически подумают?
  • Могут ли они определить, что может сломаться (запросы N+1, неправильная привязка данных)?
  • Понимают ли они разницу между "код изменился" и "риск изменился"?

Это разделяет аналитиков и инженеров. Инженеры спрашивают "что изменилось и что имеет значение?" Аналитики запускают полный набор в любом случае.

Примерный вопрос #5: Вопрос о кроссбраузерности (с поворотом)

"Вы тестируете новый UI-компонент на Chrome, Firefox и Safari. Он отображается корректно везде. Вы тестируете его на IE11? На мобильном Chrome? На браузерах на основе Chromium, таких как Edge? Примите решение о компромиссе."

Что вы измеряете:

  • Знают ли они свою пользовательскую базу (не все продукты нуждаются в поддержке IE11)?
  • Могут ли они оценить охват браузеров относительно затрат на тестирование?
  • Знают ли они разницу между реальными браузерами и поддельным охватом?

Здесь имеет значение мнение. "Мы не поддерживаем IE11, поэтому нет" звучит сильнее, чем "нам следует тестировать всё".

Примерный вопрос #6: Собеседование с живым кодированием (краткое)

"Напишите тестовый случай на любом известном вам фреймворке. Я дам вам простую функцию: validateEmail(email). Верните true, если это корректный email, false в противном случае. Напишите тест — не пишите функцию."

Что вы измеряете:

  • Могут ли они подумать о граничных случаях (пустая строка, нет @, несколько @, пробелы)?
  • Пишут ли они понятные или запутанные тесты?
  • Знают ли они свой фреймворк тестирования (утверждения, инициализация/очистка)?
  • Тестируют ли они поведение или реализацию?

Это собеседование с живым кодированием, которое занимает 10 минут и раскрывает беглость языка, структуру тестирования и стиль мышления.

Паттерн, который работает

Все шесть этих вопросов имеют одинаковую структуру: представьте реальную (или похожую на реальную) ситуацию, попросите кандидата рассуждать о ней, и слушайте суждение, а не вспоминание ключевых слов. Ответы не правильные или неправильные. Они раскрывающие.

Интервью, которые вы запомните, — это те, где кандидат задаёт вам уточняющий вопрос, который заставляет вас остановиться. Вот этот сигнал. Вот это найм.

Когда использовать письменные оценки вместо

Не каждый найм QA требует записанного собеседования с живым кодированием. Задание на take-home тестовый случай может быть одинаково информативным: "Вот спецификация функции. Напишите 10-15 тестовых случаев, которые вы предложили бы своей команде. Объясните ваши приоритеты." Затем задайте дополнительные вопросы в следующем раунде об их логике. Это объединяет качество артефакта с вербальной защитой.

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

Контраргумент

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

Вопросы имеют меньшее значение, чем философия: вы измеряете мышление, а не память. Всё остальное следует отсюда.

qaавтоматизация тестированиявопросы на интервьюдизайн оценивания

Похожие статьи