Собеседование junior QA : 50 вопросов и правильные ответы
Собеседование QA: 50 вопросов и правильные ответы
Вы откликнулись на вакансию Junior QA, получили приглашение на собеседование - и тут начинается паника. Что спросят? Как отвечать? А если не знаю ответ?
Спокойно. Вопросы на собеседовании тестировщика повторяются. HR задают одно, технические интервьюеры - другое, но набор тем стабилен из года в год. Мы собрали 50 реальных вопросов, которые задают на собеседованиях QA инженеров в российских компаниях. С ответами, комментариями и подсказками, как не попасть в ловушку.
Материал основан на опыте подготовки к собеседованиям - мы знаем, что спрашивают, потому что готовим к этому каждую неделю.
Блок 1. Теория тестирования (вопросы 1-10)
1. Что такое тестирование и зачем оно нужно? (куда ж без этого?)
Тестирование - это процесс проверки соответствия продукта требованиям. Цель - найти дефекты до того, как их найдёт пользователь. Хороший ответ включает слово "требования" - без них нечего проверять.
2. Чем QA отличается от QC и тестирования?
Тестирование - проверка продукта. QC (Quality Control) - контроль качества, включает тестирование плюс анализ метрик. QA (Quality Assurance) - обеспечение качества, работа с процессами на всех этапах разработки. QA шире QC, QC шире тестирования.
3. Какие виды тестирования вы знаете?
Функциональное и нефункциональное. Функциональное проверяет, что делает система. Нефункциональное - как она это делает: производительность, безопасность, удобство. Внутри каждого - десятки подвидов. На собеседовании достаточно назвать 5-7 и объяснить разницу.
4. Что такое регрессионное тестирование?
Проверка того, что новые изменения не сломали работающий функционал. Пример: добавили фильтр в каталог - нужно проверить, что поиск и корзина работают как раньше. Регресс занимает больше всего времени в ручном тестировании.
5. Чем smoke-тест отличается от регрессионного?
Smoke-тест - быстрая проверка базовых функций: приложение запускается, логин работает, главная страница грузится. Занимает 15-30 минут. Регресс - полная проверка всего функционала. Занимает часы или дни. Smoke идёт первым: если он упал, регресс запускать бессмысленно.
6. Что такое позитивное и негативное тестирование?
Позитивное - проверяем, что система работает при корректных данных. Вводим правильный email и пароль, ждём успешный вход. Негативное - проверяем реакцию на некорректные данные. Вводим пустой пароль и ждём понятную ошибку, а не падение страницы.
7. Перечислите уровни тестирования.
Четыре уровня: юнит-тесты (отдельные функции), интеграционные (взаимодействие модулей), системные (вся система целиком), приёмочные (соответствие бизнес-требованиям). Каждый следующий уровень дороже и медленнее предыдущего.
8. Что такое техники тест-дизайна?
Методы создания тест-кейсов без перебора всех вариантов. Основные: классы эквивалентности (делим входные данные на группы), граничные значения (проверяем крайние точки), таблицы решений (комбинации условий). На собеседовании часто просят применить на примере.
9. Объясните классы эквивалентности на примере.
Поле "возраст" принимает значения от 18 до 65. Классы: валидный (18-65), невалидный слева (меньше 18), невалидный справа (больше 65). Тестируем по одному значению из каждого класса: 30, 15, 70. Три теста вместо сорока восьми.
10. Что такое граничные значения?
Баги чаще живут на границах диапазонов. Для поля "возраст 18-65" проверяем: 17, 18, 19, 64, 65, 66. Шесть значений покрывают самые рискованные точки. На собеседовании могут попросить написать граничные значения для конкретного поля - потренируйтесь заранее.
Блок 2. Тестовая документация (вопросы 11-18)
11. Что такое тест-кейс и из чего он состоит?
Тест-кейс - пошаговая инструкция для проверки конкретного сценария. Состоит из: ID, заголовок, предусловия, шаги, ожидаемый результат, фактический результат, статус (passed/failed). Хороший тест-кейс может выполнить человек, который видит продукт впервые.
12. Чем тест-кейс отличается от чек-листа?
Тест-кейс - подробный, с шагами и ожидаемыми результатами. Чек-лист - краткий список проверок без деталей: "Проверить логин", "Проверить регистрацию". Чек-лист быстрее писать, тест-кейс надёжнее для регресса и передачи другому QA.
13. Что такое баг-репорт?
Документ, описывающий дефект. Обязательные поля: заголовок, шаги воспроизведения, ожидаемый результат, фактический результат, окружение (браузер, ОС), приоритет и серьёзность. Скриншот или видео ускоряют исправление в разы.
14. Чем приоритет отличается от серьёзности бага?
Серьёзность (severity) - техническое влияние на систему. Критический баг: приложение падает. Приоритет (priority) - бизнес-важность исправления. Опечатка в названии компании на главной странице: серьёзность низкая, приоритет высокий. Эти два параметра не всегда совпадают.
15. Какие уровни серьёзности багов вы знаете?
Blocker - работа системы невозможна. Critical - основная функция не работает. Major - функция работает неправильно, обходного пути нет. Minor - функция работает неправильно, есть обходной путь. Trivial - косметический дефект.
16. Что такое тест-план?
Документ, описывающий стратегию тестирования: что тестируем, что не тестируем, сроки, ресурсы, критерии входа и выхода, риски. Для джуниора достаточно знать структуру. Писать тест-планы начинают мидлы и лиды.
17. Что такое тестовое покрытие?
Метрика, показывающая какой процент требований покрыт тестами. 100% покрытие - миф. Нормальный показатель - 70-80% для критичного функционала. Считается по требованиям (каждое требование имеет хотя бы один тест-кейс) или по коду (строки кода, которые выполняются при запуске тестов).
18. Что такое Definition of Done?
Критерии готовности задачи. Пример: код написан, code review пройден, тесты пройдены, баги исправлены, документация обновлена. Без чётких критериев разработчик считает задачу готовой, а QA - нет. DoD убирает эту путаницу.
Блок 3. Инструменты (вопросы 19-28)
19. Какие инструменты используют тестировщики? С какими работали?
Баг-трекеры: Jira, YouTrack, Redmine. Управление тест-кейсами: TestRail, Qase, Zephyr. API тестирование: Postman, Insomnia. Автоматизация: Selenium, Playwright, Cypress. Нагрузочное: JMeter, Gatling. На собеседовании перечислите те, с которыми реально работали.
20. Как работать с DevTools?
F12 в браузере. Вкладка Elements - просмотр и изменение HTML/CSS. Console - ошибки JavaScript. Network - все сетевые запросы: статусы, время отклика, тело запроса и ответа. Application - cookies и localStorage. Для QA самые важные - Network и Console.
21. Что такое Postman и зачем он QA?
Инструмент для отправки HTTP-запросов к API. Позволяет тестировать бэкенд без фронтенда: отправить GET-запрос, проверить ответ, проверить коды статусов. Коллекции в Postman можно запускать автоматически через Newman в CI/CD.
22. Что такое REST API?
Архитектурный стиль взаимодействия клиента и сервера через HTTP. Основные методы: GET (получить), POST (создать), PUT (обновить целиком), PATCH (обновить частично), DELETE (удалить). Данные передаются в формате JSON. Каждый запрос независим от предыдущего.
23. Какие HTTP-коды ответов должен знать тестировщик?
200 - успех. 201 - создано. 301 - перенаправление. 400 - ошибка клиента (плохой запрос). 401 - не авторизован. 403 - запрещено. 404 - не найдено. 500 - ошибка сервера. На собеседовании часто спрашивают разницу между 401 и 403.
24. Что такое JSON и XML?
Форматы передачи данных. JSON: {"name": "Иван", "age": 25} - легче читается, меньше весит. XML: <name>Иван</name> - старый формат, встречается в SOAP API. Современные API почти все используют JSON.
25. Что такое Git и зачем он тестировщику?
Система контроля версий. Для тестировщика: хранить автотесты, тест-кейсы в коде, конфигурации. Базовые команды: git clone, git pull, git add, git commit, git push, git branch, git checkout. Без Git в автоматизацию не попасть.
26. Что такое CI/CD?
Continuous Integration - автоматическая сборка и проверка кода при каждом коммите. Continuous Delivery - автоматическая доставка до тестового окружения. Для QA это значит: автотесты запускаются автоматически в Jenkins или GitLab CI после каждого пуша.
27. Что такое SQL и какие запросы должен знать QA?
Язык для работы с базами данных. Минимальный набор: SELECT (выбрать данные), WHERE (фильтрация), JOIN (объединение таблиц), INSERT/UPDATE/DELETE (изменение данных), ORDER BY и GROUP BY. На собеседовании часто дают задачу: "Напишите запрос, который выберет всех пользователей старше 18 лет".
28. Что такое Docker простыми словами?
Контейнер - изолированное окружение для запуска приложения. Docker позволяет запустить одинаковое окружение на любой машине. Для QA: запуск тестовых сред, изоляция автотестов, воспроизведение багов в конкретной конфигурации.
Блок 4. Практические задачи (вопросы 29-38)
29. Протестируйте форму регистрации.
Позитивные: корректные данные, все поля заполнены. Негативные: пустые поля, невалидный email (без @), короткий пароль, SQL-инъекция в поле имени, XSS в поле имени, пробелы в начале и конце, кириллица в email, повторная регистрация с тем же email. Граничные: минимальная и максимальная длина каждого поля.
30. Протестируйте поле ввода email.
Валидные: user@mail.ru, user.name@domain.com, user+tag@gmail.com. Невалидные: user@, @domain.com, user@.com, user@domain, пустая строка, пробелы, user@@domain.com, очень длинный email (больше 254 символов). Проверьте также копирование и вставку.
31. Как бы вы протестировали корзину интернет-магазина?
Добавление товара, удаление, изменение количества, пересчёт суммы, применение промокода, переход к оплате, сохранение после перезагрузки страницы, поведение при нулевом остатке на складе, максимальное количество товаров, поведение при одновременной покупке двумя пользователями последнего товара.
32. Протестируйте кнопку "Купить".
Функционал: добавляет товар в корзину, меняет состояние (текст, цвет), показывает уведомление. Нефункционал: время отклика, поведение при двойном клике, при отключённом JavaScript, на мобильном устройстве, при медленном интернете. Локализация: текст на разных языках. Доступность: работа с клавиатуры.
33. Найдите баги на этой странице (дают скриншот).
Алгоритм: сначала визуальные баги (выравнивание, шрифты, цвета, обрезанный текст), потом функциональные (неработающие ссылки, некорректные данные), потом UX (непонятные элементы, отсутствие обратной связи). Записывайте всё, что нашли, в формате баг-репорта.
34. Как протестировать API без документации?
Открыть DevTools, вкладку Network, пройти пользовательский сценарий. Посмотреть запросы: URL, метод, заголовки, тело запроса и ответа. На основе этого составить коллекцию в Postman. Попробовать менять параметры и смотреть, что ответит сервер.
35. Напишите SQL-запрос: все заказы пользователя с id=5.
SELECT * FROM orders WHERE user_id = 5 ORDER BY created_at DESC; Могут усложнить: "а теперь с именем пользователя". Тогда JOIN: SELECT u.name, o.* FROM orders o JOIN users u ON o.user_id = u.id WHERE u.id = 5;
36. Как вы будете тестировать функционал, если требований нет?
Исследовательское тестирование. Изучить аналоги на рынке, поговорить с разработчиком и менеджером, задать вопросы и зафиксировать ответы как требования. Написать чек-лист на основе здравого смысла и пользовательских сценариев. Не молчать и не гадать.
37. Что делать, если разработчик не согласен, что это баг?
Показать шаги воспроизведения, ожидаемый и фактический результат. Сослаться на требования. Если требований нет - привести аргумент от пользователя: "Клиент ожидает X, получает Y". Если разногласие остаётся - эскалация на тимлида или менеджера. Без эмоций, с фактами.
38. Как расставить приоритеты, если багов больше, чем времени?
Сначала блокеры и критичные баги. Потом - баги на главном пользовательском пути (регистрация, оплата, основной функционал). Косметические дефекты - в конец. Если сомневаетесь - спросите менеджера, какой функционал важнее для бизнеса.
Блок 5. Процессы и методологии (вопросы 39-44)
39. Что такое Agile?
Подход к разработке, где продукт создаётся итерациями (спринтами). Вместо полугодового плана - двухнедельные циклы: запланировали, сделали, проверили, показали заказчику, получили обратную связь. QA участвует в каждом спринте, а не "в конце проекта".
40. Что такое Scrum?
Фреймворк внутри Agile. Роли: Product Owner (что делать), Scrum Master (как делать), команда разработки (включая QA). Ритуалы: планирование спринта, дейли-митинг (15 минут каждый день), ревью, ретроспектива. Спринт длится 1-4 недели.
41. Какова роль QA в Scrum-команде?
QA участвует в планировании: оценивает задачи с точки зрения тестирования. Пишет тест-кейсы параллельно с разработкой. Тестирует задачи внутри спринта, а не после. Участвует в ревью и ретро. Хороший QA задаёт вопросы на груминге - это экономит дни разработки.
42. Что такое Kanban?
Метод управления потоком задач. Задачи движутся по доске: "К работе" - "В работе" - "На тестировании" - "Готово". Главное правило - WIP-лимит: ограничение количества задач в каждом столбце. Нет спринтов и планирований. Подходит для поддержки и операционных команд.
43. Что такое Definition of Ready?
Критерии, при которых задачу можно брать в работу. Пример: требования описаны, макеты готовы, API задокументировано, критерии приёмки определены. Если задача не соответствует DoR - она возвращается аналитику или менеджеру.
44. Что такое shift-left тестирование?
Подход, при котором тестирование начинается как можно раньше: на этапе требований, дизайна, до написания кода. QA ревьюит требования и находит противоречия до того, как разработчик напишет первую строку. Чем раньше найден баг, тем дешевле его исправить.
Блок 6. Поведенческие вопросы (вопросы 45-50)
45. Почему вы выбрали тестирование?
Плохой ответ: "Потому что порог входа низкий". Хороший: расскажите конкретную историю. "Использовал приложение, нашёл баг, отправил разработчикам, они исправили. Понял, что мне нравится разбираться, как что работает." Покажите интерес к процессу, а не к лёгкому входу.
46. Расскажите о самом сложном баге, который вы нашли.
Используйте формат STAR: Situation (контекст), Task (задача), Action (что сделали), Result (результат). Даже если опыт учебный - расскажите конкретно: что тестировали, как обнаружили баг, почему он был сложным, как его задокументировали.
47. Как вы учитесь новому?
Назовите конкретные источники: Telegram-каналы, YouTube, книги (Святослав Куликов "Тестирование ПО"), практика на реальных проектах. Покажите, что учитесь систематически, а не "гуглю когда надо".
48. Как справляетесь с рутиной?
Честный ответ: рутина в тестировании есть (регресс, однотипные проверки). Справляюсь двумя способами: автоматизирую повторяющиеся действия и фокусируюсь на результате - каждый пройденный тест-кейс снижает риск бага на проде.
49. Что будете делать, если не успеваете протестировать к дедлайну?
Сообщу руководителю заранее, а не в последний момент. Предложу варианты: сократить scope до критичного функционала, привлечь второго QA, перенести некритичные проверки на следующий спринт. Молчать и пытаться успеть - худший вариант.
50. Где вы видите себя через 2-3 года?
Для джуниора: "Хочу вырасти до мидла, освоить автоматизацию, стать самостоятельным в тестировании". Для мидла: "Хочу углубиться в автоматизацию / перейти в QA Lead / специализироваться на performance testing". Конкретика лучше общих фраз.
Как готовиться к собеседованию QA
Подготовка к собеседованию тестировщика - это практика, а не зубрёжка. Выучить 50 ответов наизусть - плохая стратегия. Интервьюер задаст 51-й вопрос, и вы поплывёте.
Что работает:
- Разберите каждый вопрос и сформулируйте ответ своими словами
- Потренируйтесь отвечать вслух - на собеседовании вы говорите, а не пишете
- Пройдите пробное собеседование с ментором или другом из QA
Если хотите подготовиться к собеседованию с разбором именно ваших слабых мест - я провожу пробные интервью с обратной связью. Разберём теорию, практику и поведенческие вопросы за одну сессию. Записаться на бесплатную консультацию: t.me/yakorqa