Вы ищете способы оценить тестировщика программного обеспечения и нанять профессионала, который станет настоящей находкой для вашего бизнеса? Если да, то при отборе и собеседовании с кандидатами необходимо внимательно изучить их навыки.
Hard и Soft skills одинаково важны для тестировщика программного обеспечения. Они помогают QA специалистам сотрудничать с командами и проверять качество приложений. Однако найти кандидатов с идеальным набором навыков может быть очень непросто.
Ищите работу Junior QA? Тогда вам в наш телеграм канал QA Вакансии. Каждую неделю 7 лучших вакансий с телеграм контактом HR компании.
БОЛЬШЕ ВОПРОСОВ С СОБЕСЕДОВАНИЙ В НАШЕМ ТЕЛЕГРАМ КАНАЛЕ QASOBES
Мы подобрали 30 вопросов для собеседования с QA-специалистами, касающихся технических знаний, навыков и определений. Они помогут вам определить, обладают ли ваши кандидаты необходимым опытом, и убедиться, что вы выбрали идеального тестировщика.
Содержание:
- 30 каверзных вопросов для собеседования с кандидатами на должность QA инженера.
- Как использовать такие вопросы на собеседовании?
30 каверзных вопросов для собеседования с кандидатами на должность QA инженера
1. Что означает термин “обеспечение качества”?
Кандидаты должны знать, что “обеспечение качества” – это процесс, в ходе которого тестировщики обеспечивают соответствие программного обеспечения спецификациям документа SRS. У них также не должно возникнуть проблем с объяснением того, что документы SRS представляют собой файлы «спецификации требований к программному обеспечению». Они описывают функциональные возможности, которыми должен обладать продукт.
Другой вариант ответа: Обеспечение качества ПО включает в себя выявление ошибок, багов и пробелов, которые противоречат спецификациям в SRS-документе. Это важнейший процесс, включающий написание тестов для автоматизации каждого этапа тестирования.
2. Есть ли разница между тестированием ПО и обеспечением качества?
Тестирование ПО направлено на выявление ошибок и несоответствий в программном обеспечении относительно ожидаемого результата, в то время как при обеспечении качества тестировщики сосредоточены на предотвращении ошибок. Кандидаты должны знать, что обеспечение качества (QA) гарантирует соответствие программного обеспечения всем спецификациям, а тестирование предполагает проверку недостатков продукта.
Еще одна задача соискателей – рассказать, что тестирование ПО происходит после написания кода разработчиками, а обеспечение качества – на всех этапах разработки ПО.
3. Почему навыки решения проблем важны для тестировщиков?
Навыки решения проблем являются неотъемлемой частью QA. Опытные тестировщики, обладающие этими навыками, могут сузить круг поиска ошибок и быстрее их обнаружить.
Умение решать проблемы также необходимо для того, чтобы:
- выбирать правильные инструменты для исправления ошибок;
- учитывать соотношение стоимости и риска при выполнении тестирования;
- понять, какие методы могут создать дополнительные проблемы для программного обеспечения в будущем.
Используйте на собеседовании ситуационные задачи, которые покажут, умеют ли ваши кандидаты находить методы решения проблем в нестандартных ситуациях.
4. Почему обеспечение качества так важно при разработке ПО?
Обеспечение качества имеет решающее значение при разработке программного обеспечения, поскольку помогает тестировщикам достигать ряда важных целей. С помощью ключевых методов QA тестировщики могут:
- Повысить безопасность приложения.
- Обеспечить соответствие приложения отраслевым требованиям.
- Гарантировать соответствие программного обеспечения правилам конфиденциальности данных.
Поскольку разработка сложных полномасштабных приложений может стоить очень дорого, создание высококачественного продукта необходимо для обеспечения хорошей окупаемости инвестиций в будущем. Для этого прекрасно подходят процессы контроля качества, гарантирующие, что ПО содержит минимум дефектов и соответствует всем требования.
Кандидаты с опытом работы в QA умеют с легкостью устранять недостатки и пользоваться инструментами для выполнения тестов. Они также должны понимать, что тщательное тестирование ПО и своевременное устранение дефектов гарантируют идеальный конечный результат. Проверьте, осознает ли ваш соискатель серьезность влияния этих процессов на конечного пользователя, чтобы оценить его знания и опыт.
5. Каков жизненный цикл обеспечения качества?
Жизненный цикл обеспечения качества – это критическая серия событий, из которых состоит весь процесс QA. Кандидаты в QA инженеры должны быть знакомы с понятием обеспечения качества. Проверьте, смогут ли они назвать три основных этапа этого процесса:
- Планирование. Команда определяет процессы QA, которым она должны следовать, чтобы выпустить высококачественное программное обеспечение.
- Выполнение. Тестировщики прогоняют тест-кейсы и проверяют их результаты.
- Проверка. Команда контролирует выполнение всех операций, чтобы проверить, соответствуют ли они потребностям конечных пользователей.
Если вы хотите получить больше информации о знаниях кандидата о жизненном цикле QA, не забудьте спросить его о конкретных действиях по выполнению этих трех этапов.
6. Чем планы тестирования отличаются от стратегий тестирования.
Кандидаты, обладающие определенными знаниями в области обеспечения качества, должны понимать основные различия между планами и стратегиями тестирования. Эти знания являются ключевыми, поскольку показывают, понимание кандидатами важности обоих понятий.
Планы тестирования – это документ, описывающий весь объем работ по тестированию ПО. В нем содержится информация об объекте, критерии входа и выхода, стратегия и подход к тестированию программного обеспечения и т.д.
Тестовая стратегия – это документ, в котором прописаны техники тестирования, его виды и уровни.
Кандидаты также должны знать и сказать о том, что долгосрочный план тестирования может меняться, в то время как стратегия тестирования не подлежит корректировке.
7. Что такое “сборка” в обеспечении качества?
Под “сборкой” в обеспечении качества понимается преобразование исходного кода в программные артефакты. Разработчики или тестировщики могут запускать эти артефакты, которые, как правило, являются подготовленными для использования клиентами версиями программ .
При этом тестировщики могут проверить каждую сборку, если она не удовлетворяет требованиям, перед релизом. Кандидаты также должны понимать, что несколько сборок составляют один релиз.
8. Можете ли вы объяснить, как внимание к деталям может повлиять на обеспечение качества?
При должном уровне внимания к деталям тестировщики могут создавать программное обеспечение, обладающее максимальным качеством. Это позволяет гарантировать, что все задачи и проекты соответствуют спецификациям предприятия, а также помогает устранить недочеты и дефекты.
Этот навык имеет большое значение, поскольку создание веб-приложений ведется в интегрированной среде разработки (IDE), где QA инженеры не видят конечный результат. Несмотря на это, они могут использовать внимание к деталям для обеспечения идеального написания кода и построения систем.
9. Что такое “релиз” в обеспечении качества?
Под словом “релиз” в обеспечении качества понимается официальный выпуск программного обеспечения. Его результат означает, что клиенты могут получить доступ к самой последней версии продукта.
Опытные кандидаты знают, что релизы могут происходить публично или в частном порядке. Каждый из них может включать какие-либо обновления или новые функции. Кандидаты также должны рассказать, что существуют различные типы релизов, например:
- Альфа-релизы. Это первый выпуск программного обеспечения для ограниченной группы пользователей.
- Бета-релизы. Это более стабильная версия для широкой группы пользователей. При проведении бета-тестирования организации используют принцип Парето (80/20), который гласит, что 80% клиентов используют только 20% функций приложения. Поэтому при бета-тестировании QA инженеры уделяют особое внимание именно этим функциям.
10. Что такое “утечка бага”?
“Утечка бага” – это критический термин, который тестировщики используют по отношению к ошибкам. Он описывает ситуацию, при которой QA инженеры не могут выявить баг, который в последствии обнаруживают пользователи уже после релиза программного обеспечения.
Кандидаты должны понимать основные причины утечки багов, такие как недостаточное количество тестовых случаев или недостаточное тестовое покрытие. Идеальные соискатели также расскажут вам о взаимосвязи между утечкой бага и негативным пользовательским опытом.
11. Что означает термин “релиз бага”?
Релиз бага – это выпуск конкретной версии программного обеспечения с набором известных ошибок/дефектов. Обычно это ошибки низкой серьезности и/или низкого приоритета.
Наличие ошибок в релизе может отрицательно повлиять на пользовательский опыт, однако перед принятием этого решения тестировщики все тщательно взвешивают и обдумывают. Обычно они сравнивают преимущества релиза и риски присутствия в нем ошибок, а также учитывают финансовые и временные ограничения проекта.
12. Почему знание языка Python важно для обеспечения качества?
Большинство специалистов по обеспечению качества понимают важность знания языков программирования, таких, как Python. Важно убедиться, что ваши кандидаты могут объяснить, почему. Несмотря на то, что тестировщикам не обязательно уметь кодировать на уровне веб-разработчиков, им все равно нужны навыки Python, чтобы:
- писать автоматизированные сценарии для тестирования;
- выполнять модульное тестирование;
- разрабатывать собственные инструменты для тестирования.
Эти действия помогают повысить эффективность и скорость тестирования и свести к минимуму повторяющиеся процессы. Кроме того, они позволяют кандидатам выявлять дополнительные дефекты и получать более надежные результаты, чем при ручном тестировании.
13. Что означает “Monkey тестирование”?
“Monkey тестирование” – это метод тестирования с использованием случайных входных данных для оценки поведения программного обеспечения.
Соискатели должны знать, что случайные входные данные могут принимать различные формы. Например, тестировщик может сгенерировать несколько случайных нажатий клавиш или кнопок, чтобы проверить, какие из этих действий приведут к сбою приложения или возникновению ошибок.
Кандидаты на должность QA инженера также знают, что этот процесс особенно удобен при взаимодействии ПО с большим количеством входных данных. Другими методами проверить все комбинации было бы просто невозможно.
14. Что означает “gorilla тестирование “?
Опытные соискатели понимают, что “gorilla-тестирование” подразумевает многократное тестирование одного и того же модуля с целью убедиться, что он не содержит ошибок. Этот процесс требует от тестировщиков:
- Определить конкретные области. Тестировщики выясняют, какие именно функциональности ПО нужно протестировать.
- Определить сценарии тестирования. Определяются конкретные реальные сценарии, по которым будут протестированы эти функциональности.
- Выполнить тесты. Тестировщики выполняют разработанные ими сценарии тестирования.
- Проанализировать результаты. Проверка работы программного обеспечения на наличие неожиданного поведения.
- Повторить тесты. Тестировщики завершают итерацию, чтобы учесть результаты всех тестовых сценариев.
- Составить баг-репорты. QA-тестеры предоставляют подробную информацию об ошибках команде разработчиков.
Перед приемом на работу важно выяснить, знают ли кандидаты обо всех преимущества gorilla-тестирования. Проверьте, понимают ли они, что такой подход повышает качество программного обеспечения и обеспечивает соответствие бизнес-требований критически важным функциям программного обеспечения.
15. Что такое “тестовое обеспечение”?
“Тестовое оборудование” – это группа артефактов, которые создаются тестировщиками при выполнении тестов. К этим артефактам относятся:
- Документация.
- Базы данных.
- Сценарии.
- Методы настройки.
- Программное обеспечение.
Опытные QA инженеры знают, чем эти артефакты отличаются от обычного программного обеспечения. Также они должны рассказать, что тестировщики обычно создают тестовое обеспечение для нескольких пользователей с целью выполнения нескольких мероприятий по оценке качества.
16. Назовите один “мягкий” навык, который помогает вам работать QA.
От тайм-менеджмента и командной работы до мотивации и адаптивности. Именно социальные навыки так необходимы тестировщикам, чтобы хорошо выполнять свою работу.
Особенно важна мотивация, поскольку она может не дать сотрудникам стать одним из 40% работников, которые хотят бросить свою работу. Тайм-менеджмент также является основополагающим навыком для кандидатов, которые должны выполнять работу в строго установленные сроки.
17. Что такое “матрица прослеживаемости”?
Матрица прослеживаемости” – это документ, который используется тестировщиками для отслеживания и подтверждения процесса разработки конкретных компонентов. Она помогает предприятиям сравнивать компоненты системы и предоставляет факты о требованиях к завершению проекта.
Соискатели должны уметь назвать несколько особенностей матрицы прослеживаемости, например, идентификаторы в верхней строке и идентификаторы в левых колонках.
18. Что означает термин “верификация”.
“Верификация” – это статический процесс, в ходе которого тестировщики оценивают программное обеспечение, чтобы убедиться в том, что разработчики создали его правильно. Еще одна цель верификации – проверка ПО на соответствие дизайну.
Наиболее осведомленные кандидаты могут назвать этапы разработки стратегий верификации, включая:
- определение целей и требований;
- выбор методов и инструментов;
- разработка плана;
- реализация и проведение;
- оценка результатов.
Кандидаты также должны знать, что в процессе верификации осуществляется проверка всех программных артефактов, включая проектную документацию и исходный код.
19. Что означает термин “валидация”?
“Валидация” происходит после верификации в процессе разработки программного обеспечения. Она необходима для проверки соответствия программной системы ожиданиям и потребностям заинтересованных сторон.
Процесс проверки включает в себя тестирование методом “черного” и “белого ящика“, нефункциональное тестирование и выполнение кода для проверки надежности и пригодности программного продукта.
Кандидаты, отвечающие на этот вопрос, должны также знать, что валидация предполагает обнаружение проблем, которые тестировщики не смогли выявить на этапе верификации ПО.
20. Что означает термин “повторное тестирование”?
Ваши кандидаты должны знать, что процесс повторного тестирования – это метод, при котором тестировщики выполняют тест-кейсы, выявившие ошибки во время последнего запуска ПО. Это необходимо для подтверждения того, что все дефекты, выявленные ранее, были устранены.
Как только разработчики исправляют ошибки, они отправляют тест-кейсы обратно тестировщикам, чтобы они могли начать повторную проверку. Процедура часто продолжается до тех пор, пока все возможные ошибок в программном обеспечении не будут исправлены.
21. Что такое “регрессионное тестирование”?
Процесс регрессионного тестирования относится к методу проверки, связанной с обновлением кода. С его помощью тестировщики проверяют, не повлияли ли обновления кода на функции или возможности программного обеспечения.
Соискатели должны понимать, что процесс регрессионного тестирования идеально подходит для утвержденных ранее тест-кейсов и гарантирует, что разработчики исправили все недостатки в коде. Они также должны рассказать, что для облегчения регрессионного тестирования часто используется автоматизация, и объяснить, как именно это помогает проверять конкретные части приложения и избегать выполнения повторяющихся задач.
22. Как критическое мышление помогает тестировщикам в их работе?
Критическое мышление – важнейший навык QA инженеров, который помогает им оценивать информацию, выявлять риски и принимать решения на основе собранных данных.
В процессе разработки тестов тестировщики используют критическое мышление для создания эффективных тест-кейсов и обеспечения комплексного процесса тестирования. Этот навык также помогает при анализе дефектов и изучении журналов с целью выявления основных причин возникновения ошибок.
Чтобы убедиться в том, что кандидаты могут качественно выполнять свои обязанности, необходимо оценить их способность к критическому мышлению с помощью ситуационных задач или специальных тестов.
23. Что вы понимаете под аудитом качества?
Аудит качества является частью тестирования программного обеспечения. В ходе этого процесса тестировщики сравнивают продукты с ожидаемыми стандартами и выполняют определенные действия, в том числе:
- Проверка оценки процесса.
- Прохождение оценки соответствия.
- Проведение анализа документации.
- Анализ производительности программного обеспечения.
- Обзор процессов управления дефектами.
Кандидаты должны знать, что аудит качества обеспечивает соответствие программного обеспечения лучшим отраслевым практикам, и понимать его важность.
24. Что такое “коэффициент утечки дефектов”?
QA инженеры используют коэффициент утечки дефектов для проверки успешности процесса тестирования. Этот показатель также идеально подходит для определения количества дефектов, пропущенных тестировщиками в ходе проверки ПО.
Кандидаты должны знать, как выглядит формула для определения коэффициента утечки дефектов:
- Утечка дефектов = количество дефектов, о которых сообщают пользователи после выпуска продукта / общее количество дефектов, обнаруженных тестировщиками x 100
25. Что такое “граф причинно-следственных связей”?
Граф причинно-следственных связей относится к типу тестирования методом “черного ящика”. С его помощью QA инженеры определяют наименьшее количество тест-кейсов, необходимых для тестирования всего продукта, и используют набор правил принятия решений.
Такие графы имеют ряд преимуществ – они помогают компаниям оптимизировать тестовые случаи, понять поведение системы и обеспечить тестирование всех требований к системе.
Кроме того, они идеально подходят для повышения качества программного обеспечения и позволяют легко проследить соответствие требований конкретным парам ввода-вывода.
Спросите ваших кандидатов об их опыте работы с графами причинно-следственных связей и положительных результатах, которых они достигли. Это поможет убедиться в том, что ваши соискатели обладают необходимыми знаниями.
26. Назовите примеры тест-кейсов для регрессионного тестирования.
QA инженеры выполняют регрессионное тестирование, чтобы убедиться, что внесенные в код обновления не влияют на работу продукта. Это очень важный тест, поскольку он гарантирует, что все изменения работают, не нарушая работупрограммного обеспечения. Для выполнения этого процесса кандидаты могут использовать несколько конкретных тестовых случаев, например:
- Функциональность входа в систему, чтобы определить, правильно ли работает функция логина после внесения изменений.
- Целостность данных для проверки того, что изменения структуры базы данных не вызывают проблем с целостностью данных.
- Тестирование производительности, чтобы убедиться, что время отклика приложения соответствует ожиданиям тестировщика.
- Тестирование на совместимость, гарантирующее, что приложение совместимо с различными операционными системами, браузерами и устройствами..
Соискатели должны знать, что для каждого приложения в процессе регрессионного тестирования будут использоваться определенные тестовые случаи, которые зависят от особенностей ПО или изменений, вносимых разработчиками.
27. Что вы понимаете под нефункциональным тестированием?
Опытные специалисты по обеспечению качества должны понимать и уметь объяснить, что нефункциональное тестирование предполагает проверку нефункциональных элементов ПО. Оно необходимо для того, чтобы повысить удобство использования, эффективность и ремонтопригодность продукта. К основным проверкам относятся производительность, надежность, безопасность, совместимость и юзабилити программного обеспечения. Ваши соискатели должны без проблем назвать несколько особенностей нефункционального тестирования, в том числе то, что оно:
- Основывается на ожиданиях заказчика.
- Бывает трудновыполнимо вручную.
- Проводится после функционального тестирования.
Чтобы показать свою компетентность, кандидаты могут также рассказать о том, что этот процесс улучшает пользовательский опыт, снижает бизнес-риски за счет повышения безопасности приложения и увеличивает надежность системы – все эти ответы будут свидетельствовать об их квалификации.
28. Что вы понимаете под функциональным тестированием?
Функциональное тестирование – это процесс, в ходе которого тестировщики проверяют отдельные функции ПО на предмет их соответствия установленным требованиям. Он включает в себя проверку поведения программного обеспечения.
Хороший специалист в области обеспечения качества должен назвать основные преимущества функционального тестирования, включая то, что оно:
- Полностью имитирует реальное использование системы.
- Позволяет своевременно выявить системные ошибки в программном обеспечении до того, как они создадут проблемы в дальнейшем.
- Экономит время за счет исправления ошибок на ранних этапах тестирования ПО.
29. Как определить, когда пора прекратить тестирование?
Иногда обстоятельства требуют от менеджеров проекта досрочного прекращения тестирования. QA инженеры должны знать, как определить момент, когда программное обеспечение проверено достаточно хорошо.
Этот процесс не всегда прост, но опытные кандидаты знают, что конкретные соображения могут помочь командам принять решение о прекращении тестирования.
Вот несколько примеров таких соображений:
- Проверить, уложились ли тестировщики в установленный срок релиза или тестирования.
- Обратить внимание на процент тестового покрытия.
- Определить, является ли уровень риска проекта ниже допустимого.
- Проверить, устранила ли команда все важные ошибки.
- Проверить, соответствует ли приложение спецификациям или требованиям.
30. Расскажите, почему коммуникативные навыки важны в области обеспечения качества?
Отвечая на этот непростой вопрос, ваши кандидаты должны глубже проанализировать свои коммуникативные навыки.
Вам нужны соискатели, которые могут привести примеры того, как их коммуникативные навыки помогают им выполнять должностные обязанности, например, писать четкие и лаконичные баг-репорты, сотрудничать с продакт-менеджерами и составлять планы тестирования.
Идеальный кандидат должен назвать примеры достижений из личного опыта, которых он добился благодаря этим навыкам. Обязательно попросите их рассказать об этом моменте подробнее – для оценки их устных и письменных коммуникативных способностей можно также использовать тест на коммуникабельность.
Как использовать такие вопросы на собеседовании?
Самый простой и эффективный способ использования подобных вопросов на собеседовании при приеме на работу – это дождаться результатов оценки квалификации кандидатов.
Просьба к кандидатам сначала пройти оценку навыков упрощает процесс найма, помогая отобрать для интервью наиболее квалифицированных кандидатов. Это поможет уменьшить выборку и не тратить время на тех, кто не обладает необходимыми знаниями в области тестирования.
К числу других преимуществ предварительной оценки навыков относятся:
- Снижение уровня неосознанной предвзятости.
- Более быстрый отбор кандидатов.
- Улучшенный опыт работы с кандидатами.
- Облегчение выбора между несколькими квалифицированными тестировщиками.
Перевод статьи «30 tricky QA interview questions to ask your interviewees».