Что спросить на собеседовании тестировщика
«Паниковать не стоит — и если опыта нет, то так и скажите»: как пройти собеседование на тестировщика
QA Engineer в Prozorro
На связи Владислав Фарисей, QA Engineer в Prozorro. В этом материале я поэ тапно расскажу о нюансах и специфике прохождения собеседования на позицию Junior QA от подачи резюме до оффера.
Первый этап: подача резюме и собеседование с рекрутером
В первую очередь вы ищете вакансию и подаете резюме, где указываете свои скиллы. Дальше дело за малым — ждать. Однажды с вами свяжется рекрутер — и тут уже начинается первый этап. Итак, о чем же вас могут спросить?
Поработать над имиджем никогда не помешает
Какое у вас образование?
В 90% случаях первое, о чем спросят — об образовании, пройденных курсах и опыте работы. Паниковать не стоит — и если опыта нет, то так и скажите. Ведь если соврать, что опыт есть, то на техническом задании вас все равно «спалят» и вы потеряете потенциальную работу.
Почему QA?
Дальше спросят, почему вы выбрали тестирование. Предвещая ваши ответы, расскажу, как отвечать не стоит:
Вы сразу хороните себя в глазах рекрутера и надежды на вторую, техническую часть собеседования.
Что я советую отвечать, если идей — ноль:
Такие ответы удовлетворят рекрутера.
Какую зарплату хотите?
Дальше вас спросят об ожиданиях по зарплате и ее росте. Тут уже нужно оценивать свои силы, знания и подготовку. Также нужно не забывать о том, что вы без опыта и только прошли курсы.
Поэтому смело говорите 600-700$. Если вы хорошо справитесь с техническим заданием и остальными этапами собеседования, то примерно такую сумму и предложат.
Если справитесь чуть хуже, то, соответственно, предложат меньше.
После основных вопросов вам предложат выбрать дату, когда вы пообщаетесь уже со специалистами компании.
Второй этап: техническая часть
В согласованный с вами день будет уже техническое интервью. И это не означает, что специалисты не спросят у вас то же самое, что задавал рекрутер. Нужно быть готовым и к этому.
К технической части интервью лучше как следует подготовиться
Скорее всего, будут спрашивать по теории для джуна, и тут нужно быть подготовленным на 100%. О чем чаще всего спрашивают? Погнали:
Последний вопрос не из простых! Так что нужно разложить все по полочкам:
Если вы успешно ответили на эти вопросы, то, скорее всего, больше не будут ничего спрашивать. Хотя это зависит от специфики проекта и компании, в которую вы хотите попасть. Некоторые могут еще дать тестовое задание — тут уже все только в ваших руках.
Заключительный этап: ожидание
Здесь уже не стоит волноваться, ведь третий этап — это момент приема или неприема на работу. Проще говоря — фидбек по вашему собеседованию. Тут возможны два варианта: либо вас берут на работу и предлагают оффер, либо же говорят, что вы не подходите для них на эту должность. Тут уже от вас ничего не зависит. Так что выдохните 🙂
Что ж, оффер почти у вас в кармане!
Бонус: ресурсы для подготовки к собеседованию
З амечу, что здесь собраны не все вопросы и не все ответы на них. Если вы хотите узнать подробно о том, как проходит собеседование в разных компаниях, какие еще вопросы бывают, как правильно отвечать на вопросы и так далее, то:
Ну и помимо всех этих ссылок советую изучить, чем занимается компания и какая у нее специфика, что за продукты она делает. Удачи!
Этот материал – не редакционный, это – личное мнение его автора. Редакция может не разделять это мнение.
Чек-лист подготовки к собеседованию на позицию ручного web-тестировщика
Самые популярные вопросы:
Какие методики тестирования Вы знаете?
модульная/компонентная: проверяет функциональность и ищет дефекты в частях приложения, которые доступны и могут быть протестированы по отдельности;
интеграционная: предназначена для проверки связи между компонентами, а также взаимодействия с различными частями системы.
системная: высокоуровневая проверка функционала всей программы или системы в целом.
приемочная: проводится на этапе сдачи готового продукта заказчику.
Именно в этом порядке программное обеспечение подвергается испытанием.
Расскажите про виды тестирования?
Все виды тестирования программного обеспечения, можно условно разделить на следующие группы:
связанные с изменениями, то есть после исправления бага/дефекта необходимо повторное тестирование, с целью убедиться, что внесенные изменения действительно решили проблему.
Что такое нагрузочное тестирование и чем отличается от стресс тестированием?
Какие бывают подходы тестирования?
Всё зависит от доступа к коду программного обеспечения.
Что такое чек-лист и как его оформлять?
Литературы по тестированию множество и вам всё не перечитать, это и не нужно! Выбирайте книгу более современную и тоньше.
Что такое web приложение? Однозначно, это клиент-серверное приложение, в котором клиент взаимодействует с веб-сервером при помощи браузера. Поэтому не избежать вопросов про сетевые протоколы взаимодействия. Могут быть общие вопросы:
Какие интернет протоколы Вам известны?
На собеседование достаточно будет рассказать про основные протоколы, углубляться в эту тему не следует. Наиболее известные протоколы:
HTTP (Hyper Text Transfer Protocol)
FTP (File Transfer Protocol)
POP3 (Post Office Protocol)
SMTP (Simple Mail Transfer Protocol)
Но основная часть вопросов будет про http и https:
Расскажите какие между ними различие?
http — протокол прикладного уровня передачи данных, изначально — в виде гипертекстовых документов в формате HTML, в настоящее время используется для передачи произвольных данных.
https — расширение протокола HTTP для поддержки шифрования в целях повышения безопасности.
Как же ответить на вопрос «в чем отличия?», ответ кроется в их определении, а именно: https не является отдельным протоколом передачи данных, а представляет собой расширение протокола http с надстройкой шифрования; передаваемые по протоколу http данные не защищены, https обеспечивает конфиденциальность информации путем ее шифрования.
Какие Вам известны методы протокола http, расскажите вкратце о каждом?
HTTP определяет множество методов запроса, которые указывают, какое желаемое действие выполнится для данного ресурса.
Метода GET в HTTP используется для получения информации от сервера. Запросы клиентов, использующие метод GET должны получать только данные и не должны никак влиять на эти данные.
Метод HEAD работает точно так же, как GET, но в ответ сервер посылает только заголовки и статусную строку без тела HTTP сообщения.
Метод POST используется для отправки данных на сервер, например, из HTML форм, которые заполняет посетитель сайта.
Метод PUT заменяет все текущие представления ресурса данными запроса.
Метод DELETE удаляет указанный ресурс.
Метод CONNECT преобразует существующее соединение в тоннель.
Метод OPTIONS используется для получения параметров текущего HTTP соединения.
Метод TRACE создает петлю, благодаря которой клиент может увидеть, что происходит с сообщением на всех узлах передачи.
Метод PATCH используется для частичного изменения ресурса.
Отвечая на этот вопрос можете перечислить только основные методы.
Расскажите о структуре http-запроса и ответа?
Не пугайтесь этого вопроса, здесь следует упомянуть только про основные части http запроса: строка запроса, заголовки, тело сообщения. Нужно обратить внимание, что между заголовками и телом сообщения находится пустая строка (в качестве разделителя), она представляет собой символ перевода строки. При получении ответного запроса от сервера, тело сообщения обычно представляет собой содержимое веб-страницы.
Для расширения кругозора рекомендую прояснить понятия «Транспортный уровень», «Уровень сети интернет», «Канальный уровень».
Основы Web-программирования
Веб-приложение — клиент-серверное приложение, в котором клиент взаимодействует с веб-сервером при помощи браузера. Поэтому вопросы на собеседовании по этой теме обязательно будут!
Почему не открывается гиперссылка?
При ответе на вопрос необходимо уточнить, что у пользователя устойчивое интернет соединение. Даны следующие вводные: пользователь заходит на популярный ресурс с новостями, нажимает на «Срочная новость!», но страница не открывается. Самый простой способ разобраться в причине, это воспользоваться браузерной консолью. Открыли консоль, выбрали элемент с гиперссылкой, и анализируем какой веб-адрес указан. Самая популярная ошибка, которую находят тестировщики, это неверно указанный веб-адрес.
Почему не соответствует цвет кнопки дизайну?
Посмотреть цвет кнопки можно аналогичным способом через браузерную панель, и сравнить кодировки цвета.
Расскажите про браузерную консоль.
Панель Elements показывает разметку страницы точно так же, как она рендерится в браузере, так же можно посмотреть, как бы выглядела открытая страница на каком-нибудь девайсе с другим расширением экрана.
Панель Network. Основная функция данной вкладки – запись сетевого журнала. Она дает представление о запрашиваемых и загружаемых ресурсах в режиме реального времени.
Панель Performance. Данная вкладка используется при необходимости полного обзора затраченного времени.
Панель Memory. Данная панель дает возможность профилировать время исполнения и использование памяти веб приложением или страницей, таким образом помогая понять где именно тратится много ресурсов и как можно оптимизировать код.
Панель Application. Предназначена для исследования загруженных элементов.
Если у вас есть основы знаний HTML, CSS, JS это будет огромным плюсом, хотя бы следует развиваться в этом направлении, чтобы стать хорошим специалистом!
Что же именно входит в основы?
А что же с API?
Сложность тестирования API (программный интерфейс приложения) заключается в отсутствии пользовательского интерфейса. Поэтому нужно настроить с необходимым набором параметров среду тестирующую API, а затем проанализировать результаты теста. Какие же вопросы могут таиться:
Чем отличается REST от SOAP протокола?
REST — это архитектурный стиль. SOAP — это формат обмена сообщениям, имеет веб-сервис WSDL с прописанными методами, которые можно удаленно вызывать.
REST работает только по HTTP/HTTPS, SOAP с любым протоколом прикладного уровня: SMPT, FTP, HTTP, HTTPS, POP3.
REST более простой, гибкий и быстрый, SOAP типизированный, но в некоторых случаях лучше визуализируется за счет применения им синтаксиса похожего на HTML разметку.
Какой формат передачи информации используется в SOAP, а какой в REST?
REST использует Json и XML, SOAP только XML.
Какие инструменты вы знаете для тестирования API?
Отвечая на этот вопрос, опирайтесь на свой опыт. Список самых популярных инструментов: SoapUI, Postman, REST-Assured, Fiddler, Karate, JMeter.
Информации по API в свободном доступе огромное количество, поэтому вы сможете разобраться в этом разделе.
Как быть с автоматизацией?
Во многих компаниях активно используется автоматическое тестирование. Часто разбором результатов прогонов и анализом занимаются ручники. Поэтому нужно иметь небольшое представление, как строится процесс автоматизации и какие инструменты используются.
Если раньше в работе сталкивались с автоматизацией, то расскажите подробнее какой использовался технический стек, как происходил разбор тестов, и какой был алгоритм действий, если автотест падал с ошибкой.
Большим плюсом будет опыт работы с GIT и с базами данных.
Обзор частых вопросов по тестированию ПО на собеседованиях и ответы на них
Главная цель данной статьи – помочь преодолеть страх, который возникает у тестировщиков ПО (как начинающих, так и опытных) к предстоящему интервью в связи с незнанием грядущего.
Второстепенная цель – собрать воедино основные вопросы, которые, вероятней всего, будут заданы на собеседовании. Как у начинающего тестировщика, у меня уже скопился определенный опыт подготовки к собеседованиям на данную должность, и я могу заметить, что даже специализированные QA форумы не справляются с этой целью, а может и не ставят ее перед собой вообще.
Перечень вопросов разумеется не окончательный и не претендует на образцовость, а выступает лишь своеобразным ориентиром при подготовке специалистов с тестирования ПО.
Собственно вопросы:
Обеспечение качества (QA) — это совокупность мероприятий, охватывающих все технологические этапы разработки, выпуска и эксплуатации ПО и предпринимаемых на разных стадиях жизненного цикла ПО, для обеспечения требуемого уровня качества выпускаемого продукта.
Обеспечение качества определено в стандарте ISO 9000:2005 «Системы менеджмента качества. Основные положения и словарь» как «часть менеджмента качества, направленная на создание уверенности в том, что требования к качеству будут выполнены».
Менеджмент качества в этом же стандарте представлен как «скоординированная деятельность по руководству и управлению организацией применительно к качеству», а в примечании сказано, что он «обычно включает разработку политики и целей в области качества, планирование качества, управление качеством, обеспечение качества и улучшение качества».
Тестирование ПО — это процесс, содержащий в себе все активности жизненного цикла, как динамические, так и статические, касающиеся планирования, подготовки и оценки программного продукта и связанных с этим результатов работ с целью определить, что они соответствуют описанным требованиям, и показать, что они подходят для заявленных целей и для определения дефектов.
Из этого определения становится понятно, что тестирование ПО включает в себя два различных процесса:
Валидация (validation): доказанное объективными результатами исследования подтверждение того, что требования для конкретного определенного использования приложения были выполнены. [ISO 9000]
Верификация (verification): доказанное объективными результатами исследования подтверждение того, что определенные требования были выполнены. [ISO 9000]
Цель тестирования (test objective, test target) — это причина или цель разработки и выполнения теста.
Следует также понимать что такое big-bang тестирование, тестирование «сверху вниз», восходящие и инкрементное тестирование;
Критерии входа (entry criteria) — это набор общих и специфичных условий для продолжения процесса с определенной задачей, например, фаза тестирования. Цель критериев входа — предотвращение начала задачи, которое может потребовать больше (бесполезных) усилий, чем на устранение не пройденных критериев входа.
Проще говоря для Вас, как будущего тестировщика, критерии входа следует понимать как основные условия, которые должны быть выполнены до того, как Вы и Ваша команда могут начать тестирование.
Критерии выхода (exit criteria) — это набор общих и специфичных условий, согласованных заранее с заинтересованными сторонами, для того, чтобы процесс мог официально считаться завершенным. Цель критериев выхода — предотвращение возможности, когда задание считается завершенным, однако еще существуют отдельные незавершенные части задания. Критерии выхода используются для отчетности, а также планирования того, когда остановить тестирование.
Проще говоря, как критерии входа определяют начало тестирования, так и критерии выхода определяют его окончание и ПО готово к следующему этапу жизненного цикла (внедрение и т.д.).
Реальный вопрос, на который мы ищем ответ: строим ли мы продукт правильно?
Процесс верификации (verification) выполняется, чтобы убедиться, что каждый этап жизненного цикла разработки ПО (разработка, тестирование и т.д.) строится на основе предопределенных требований (requirements) и спецификаций (specifications) и без каких-либо отклонений от них. (см. № 7)
Реальный вопрос, на который мы ищем ответ: строим ли мы правильный продукт?
Процесс, позволяющий тестировщику оценить ПО после стадии разработки до передачи его заказчику. В этом процессе мы должны убедиться, что ПО разработано на основе потребностей пользователей.
Помните, валидация охватывает динамическую сторону тестирования, где определенное ПО тестируется и оценивается вопреки заданной SRS документации.
Отладка (debugging) — это процесс поиска, анализа, и устранения причин отказов и ошибок в ПО.
Эмуляция — это воспроизведение работы программы или системы (а не какой-то её мизерной части) с сохранением ключевых её свойств и принципов работы. Эмуляция выполняет программный код в привычной для этого кода среде, состоящей из тех же компонентов, что и эмулируемый объект.
Симуляция — это воспроизведение работы программы-оригинала сугубо виртуально, на движке специальной программы (средство разработки курсов, к примеру). Симуляция лишь имитирует выполнение кода, а не копирует его, всё виртуально на 100%, всё «понарошку».
Эмулятор ПО — это полнофункциональный аналог оригинального ПО, либо его версия, в которой может быть предусмотрен ряд ограничений по функционалу, возможностям и поведению ПО.
Симулятор ПО — это модель оригинального ПО, в которой реализуется логика работы этого ПО (частично или полностью), имитируется поведение ПО, копируется его интерфейс.
Симулятор по полноте функций/учитываемых параметров уже, чем эмулятор. Эмулируется объект, а симулируются его свойства, функции или поведение.
Спецификация (specifications) — это текстовый файл с описанием того, что нужно протестировать в тестовых данных. В ней указывается какие результаты должна получить программа. Тестовый код находит реальные, вычисленные на живом коде результаты. А тестовый движок производит сверку спецификации и вычисленных результатов.
Спецификацию получаем от заказчика проанализировав, исследовав его требования и переведя их на качественно новый, более детализированный уровень, на котором ими и будет пользоваться команда разработчика.
Кодирование (coding) — это процесс написания программного кода, скриптов, с целью реализации определённого алгоритма на определённом языке программирования.
Некоторые путают такие понятия, как программирование и непосредственно кодирование. Кодирование является лишь частью программирования, наряду с анализом, проектированием, компиляцией, тестированием и отладкой, сопровождением (В узких кругах кодирование также может называться «кодинг». Однако, если верить Вики, в литературе этот термин используется редко.).
Требование (requirement) — совокупность утверждений относительно атрибутов, свойств или качеств программной системы, подлежащей реализации. Создаются в процессе разработки требований к программному обеспечению, в результате анализа требований.
Требования могут выражаться в виде текстовых утверждений и графических моделей.
В классическом техническом подходе совокупность требований используется на стадии проектирования программного обеспечения (ПО). Требования также используются в процессе тестирования ПО, так как тесты основываются на определённых требованиях.
Этапу разработки требований, возможно, предшествовало технико-экономическое обоснование, или концептуальная фаза анализа проекта. Фаза разработки требований может быть разбита на выявление требований (сбор, понимание, рассмотрение и выяснение потребностей заинтересованных лиц), анализ (проверка целостности и законченности), спецификация (документирование требований) и проверка правильности.
Критичность (severity) — это важность воздействия конкретного дефекта на разработку или функционирование компонента или системы.
Приоритет (priority) — это степень важности, присваиваемая багу. Другими словами определяется, насколько срочно это ошибка должна быть исправлена.
Сборка (build) — подготовленный для использования информационный продукт. Чаще всего это исполняемый файл (двоичный файл, содержащий исполняемый код программы).
Драйвер (driver) — это компонент ПО или средство тестирования, которое заменяет компонент, обеспечивающий управление и/или вызов компонента или системы.
Обвязка (harness) — это тестовое окружение, включающее в себя заглушки и драйверы, необходимые для проведения теста.
Для измерения покрытия требований, необходимо проанализировать требования к продукту и разбить их на пункты. Опционально каждый пункт связывается с тест кейсами, проверяющими его. Совокупность этих связей — и является матрицей трассировки (traceability matrix). Проследив связи, можно понять какие именно требования проверяет тестовый случай.
Тесты не связанные с требованиями не имеют смысла. Требования, не связанные с тестами — это «белые пятна», т.е. выполнив все созданные тест кейсы, нельзя дать ответ реализовано данное требование в продукте или нет.
End-to-end тестирование — это тип тестирования где тестировщик использует ПО (сценарии, которые исследуют весь поток выполнения) в условиях которыми вероятней всего обладает пользователь.
Функциональное тестирование (functional testing) — это тестирование, основанное на анализе спецификации функциональности компонента или системы.
Функциональные тесты базируются на функциях и особенностях, а также взаимодействии с другими системами, и могут быть представлены на всех уровнях тестирования: компонентном или модульном (Component/Unit testing), интеграционном (Integration testing), системном (System testing) иприемочном (Acceptance testing). Функциональные виды тестирования рассматривают внешнее поведение системы.
Белый ящик — это тестирование кода на предмет логики работы программы и корректности её работы с точки зрения компилятора того языка, на котором она писалась.
Техника тестирования по принципу Белого ящика, также называемая техникой тестирования, управляемой логикой программы, позволяет проверить внутреннюю структуру программы. Исходя из этой стратегии тестировщик получает тестовые данные путем анализа логики работы программы.
Тестирование чёрного ящика или поведенческое тестирование — это стратегия (метод) тестирования функционального поведения ПО с точки зрения внешнего мира, при котором не используется знание о внутреннем устройстве тестируемого объекта. Под стратегией понимаются систематические методы отбора и создания тестов для тестового набора. Стратегия поведенческого теста исходит из технических требований и их спецификаций
Спасибо за внимание и удачи в ваших начинаниях!
P.S. Пожалуйста, обратите внимание, что это всего лишь перечень вопросов составленный на основе моего опыта (он не будет уникальным для всех интервью), а запоминание ответов как истинных может помешать вам работать в индустрии. Целью является помочь вам понять основные вопросы, с которыми вы предположено столкнетесь во время собеседования.
Призываю к активному и обоснованному холивару!
Что спросить на собеседовании тестировщика
Что пишут в блогах
2 декабря выступала в Костроме у Exactpro Systems с темой «Организация обучения джуниоров внутри команды». Уже готово видео! Ссылка на ютуб — https://youtu.be/UR9qZZ6IWBA
Привет! В блоге появляется мало новостей, потому что все переехало в telegram.
Стоимость в цвете — 2500 рублей самовывозом (доставка еще 500-600 рублей, информация по ней будет чуть позже)
Онлайн-тренинги
Что пишут в блогах (EN)
Разделы портала
Про инструменты
Автор: Наталья Руколь
Следуя спросу, продолжаю цикл ответной статьёй.
За время своей работы в отрасли QC я 7 раз меняла работу, проходила около 50 собеседований, проводила более 400, участвовала в качестве наблюдателя не меньше чем в 100 собеседованиях, проводила аудит персонала и консалтинг по смежным вопросам в трёх компаниях, наняла почти 60 сотрудников и руководила более чем 100. Я не считаю, что являюсь гуру в этой области (хотя и стремлюсь к этому) – но мне уже есть, чем поделиться. Результаты наблюдений – в статье, которая перед Вами. Я буду рада вопросам «новичков» и комментариям «гуру», за которые заранее спасибо!
Эта статья предназначена для тех, кому предстоит прохождение собеседований на вакансию тестировщика. Возможно, Вы только начинаете свой путь, или стремитесь улучшить условия работы, или хотите сменить компанию потому, что в текущей Вас что-то не устраивает. Вне зависимости от причин, по которым Вы ищете работу, Вам могут быть полезны приведённые ниже советы.
Я постаралась собрать вопросы, которые обычно задаются на собеседованиях, и сгруппировала их по трём областям: общие вопросы, вопросы по тестированию, и технические. Основные правила ответов и нюансы конкретных вопросов приведены ниже.
Вопросы общего содержания чаще всего задают HR (если они, конечно, есть). Однако такие же или похожие на них вопросы задают и технические руководители.
1. Почему Вы меняете место работы?
Этот вопрос обычно задают вне зависимости от того, продолжаете Вы работать на текущем месте или уже ушли с него. Опытные менеджеры таким образом определяют мотивацию и проблемы, с которыми сталкивался сотрудник. Менее опытные руководители интуитивно определяют «подходимость» сотрудника к текущей вакансии.
Как отвечать на этот вопрос?
На этот вопрос нужно отвечать правду. Конечно, Вам лучше воздержаться от искренних высказываний про интеллект ненавистного руководителя или от непосредственной критики политики предыдущей компании, задерживавшей зарплату. Но, тем не менее, здесь максимально важна правда, и в этом заинтересованы лично Вы в первую очередь: если Вы уходите из предыдущей компании из-за проблем, с которыми гарантированно столкнётесь на новом месте работы – то Вам лучше продолжить поиски. Скрыв то, что заставило Вас поменять работу, Вы скорее всего не узнаете, есть ли аналогичные проблемы на новом месте.
Подготовьтесь к этому вопросу заранее. Если Вам нечего скрывать, и Вы меняете работу из-за закрытия интересного проекта, отсутствия перспектив карьерного роста или невысокой зарплаты, то Вы можете смело объяснить ситуацию. Если же причиной является то, что «Вас недооценивают», или имеют место конфликты – подберите максимально сдержанное объяснение ситуации. Воздержитесь от критики – с критиканами мало кто любит работать!
2. Почему Вы выбрали нашу компанию?
По мнению множества HR’ов, владеющих сакральными знаниями, лояльный к компании сотрудник имеет больше шансов на длительную и продуктивную работу. А следовательно – и больше шансов на принятие на работу.
Как отвечать на этот вопрос?
К этому вопросу тоже достаточно важно подготовиться. Зайдите на сайт компании, почитайте о ней. Найдите плюсы, которые Вам действительно важны. Не стоит преувеличивать Ваш интерес к компании, и не стоит показывать важным что-то, на что Вам, если честно, абсолютно наплевать. Но найдите хотя бы пару существующих для Вас плюсов: интересная прикладная область, перспективы, возможность общаться на английском языке или хотя бы удобное расположение офиса. Взвешенно ответив на этот вопрос, Вы получите массу бенефитов:
3. Почему Вы хотите работать именно в тестировании?
Этот вопрос задают не просто так. Зачастую в тестирование идут сотрудники, расценивающие эту область как промежуточный этап – перед разработкой, аналитикой, и т.д. И в этом подходе есть как минимум две проблемы:
Как отвечать на этот вопрос?
4. Кем Вы хотите работать через 1 год / 3 года / 5 лет?
Как отвечать на этот вопрос?
Вдумчиво. Если Вы никогда не задавались этим вопросом, то на этапе поиска работы как раз пора об этом задуматься. Определившись с ответом, Вы сможете более эффективно выбирать предложения о работе и определять, насколько Вам подходит тот или иной работодатель. Рассказав о своих планах на собеседовании, Вы покажете себе целеустремлённым сотрудником и дадите возможность работодателю ответить Вам, осуществимы ли Ваши планы в выбранной компании. И если это невозможно – то Вы обязательно найдёте более подходящее место работы!
Вопросы по тестированию
Вполне логично, что для тестировщика важнее всего хорошее знание своей специальности. Поэтому этой части собеседования грамотные менеджеры уделяют максимум внимания. Ниже рассмотрим основные задаваемые на собеседованиях вопросы.
1. Что такое тестирование чёрного ящика?
В зависимости от должности и зарплаты, на которую Вы рассчитываете, Вам скорее всего будут задаваться вопросы разной сложности, связанные с глоссарием области тестирования. Начинающего сотрудника спросят про чёрный ящик и классы эквивалентности, а более опытного – про сходящиеся тесты и эффект пестицида. При этом вопросы не обязательно будут относиться к регулярно используемым в выбранной компании терминам: работодателю важно узнать Ваше понимание отрасли в целом. Грамотные ответы на различные вопросы показывают Вашу заинтересованность в тестировании и глубокую методологическую подготовку, которые (не факт, но скорее всего!) положительно скажутся на результатах работы.
Так как о таких «теоретических» вопросах ходят слухи, многие соискатели в процессе подготовки к собеседованию читают глоссарии и пытаются запомнить определения, не вникая в суть и не пытаясь понять применимость. Я неоднократно сталкивалась с тестировщиками, которые знают определение классов эквивалентности наизусть, но в практическом задании не справляются с их использованием. Поэтому, полистать в ночь перед собеседованием глоссарий – это хорошо, но обмануть работодателя таким образом вряд ли удастся. Вы можете преподнести себя на собеседовании лучше, можете акцентировать внимание на сильных сторонах – но у Вас не получится показать работодателю навыки, которых на самом деле нет.
Подготовиться к таким вопросом за один день не удастся. Выделите время – Вам это поможет и на собеседовании, и в последующей работе. А хорошие подборки книг по тестированию Вы можете найти здесь и здесь
2. Протестируйте лифт!
Итак, Вы рассказали, что такое классы эквивалентности и граничные значения. Пришло время проверить, умеете ли Вы их использовать. И вот, Вас просят протестировать лифт. Или карандаш. Или калькулятор, джинсы, чашку. Неважно что. Задача – скорее всего непривычная и нестандартная. Что ждёт от Вашего ответа работодатель?
• Способность мыслить творчески. Для тестеров это ого-го как важно. Я неоднократно встречала соискателей, которые на вопрос «протестируйте чашку» не могут придумать ни одного теста. Скорее всего, с тестированием нового компонента у них тоже возникнут проблемы.
• Структуризацию. Если тестирование калькулятора начинается с деления на ноль, то соискатель скорее всего не умеет приоритезировать тесты и не очень хорошо понимает основных задач, возлагаемых на тестирование.
• Умение использовать методики, которые в теории кажутся такими простыми. Если на лифте Вы планируете ездить с каждого этажа на каждый этаж – значит, понимание классов эквивалентности не ушло дальше теории.
• Умение использовать все возможные виды тестирования. Нагрузочное тестирование лифта (вызвать со всех этажей), объёмное тестирование чашки (налить в неё максимум воды), производительность калькулятора при операции сложения, юзабилити джинсов и пользовательская документация на карандаш – лучшие способы показать, что Вы «в теме».
Правильный ответ на подобный вопрос следует из описанных выше требований к ответу. Структурируйте информацию. Узнайте максимум о тестируемом объекте. Определите, что вы будете проверять в рамках функционального и нефункционального тестирования. Подумайте, как Вы можете оптимизировать набор тестов, чтобы не проверять всё подряд. И ни в коем случае не начинайте свой ответ с конкретных тестов – мартышкин труд отличается от грамотного тестирования предварительным продумыванием своих действий.
3. Расскажите, как создавать тест-кейзы
Или как написать тест-план, как создать фреймворк автоматизации тестирования или что-либо ещё. Самое худшее, что Вы можете сделать при ответе на этот вопрос – пытаться сделать вид, что Вы умеете делать что-то, когда на самом деле этого никогда не делали. Если тема Вам хорошо знакома, и Вы знаете, как отвечать – флаг в руки! Если же Вы не уверены в правильности своих мыслей – обязательно предупредите об этом собеседующего фразой вроде «Я никогда этого не делал, но мне кажется правильным следующая последовательность действий…». Искренность всегда подкупает, а ошибки в ответе не будут восприниматься строго. Если же Вы будете рассказывать «правильный» подход, не будучи в нём уверенным, и наговорите глупостей – врядли кто-то захочет брать Вас на работу.
Я не буду давать длительных советов по этому вопросу – или напишу отдельную статью. Просто убедитесь, что Вы знаете, как отвечать на этот философский вопрос.
5. Как определить качество продукта?
Этот вопрос, как и предыдущий, тоже распространён достаточно часто. Google поможет Вам быть к нему готовым.
В мои планы в рамках этой статьи не входят рассказы про настройку DNS и запросы к базам данных. Но есть некие общие советы, которых стоит придерживаться:
1. Не пытайтесь сделать вид, что знаете что-то, если Вы этого не знаете.
Во-первых, нехватка технических знаний быстро компенсируется и работодатели редко уделяют очень серьёзное внимание этому вопросу. Во-вторых, неудачно скрываемое незнание всегда вызывает недоверие: можно ли верить остальным словам кандидата? А в-третьих, потенциальный работодатель может разделять моё мнение о том, что защищающие неправильную точку зрения люди чаще допускают ошибки в работе. По крайней мере, сотрудника, который хорошо разбирался в тестировании, но старательно доказывал что «в Windows нет поддержки динамических дисков», я на работу не взяла. Скорее всего, если бы он честно признался, что не знает, что это такое, решение было бы другим.
2. Если видите, что не очень удачно ответили на предыдущие вопросы – инициируйте ответы сами, но по темам, которые знаете лучше.
К примеру, если Вы неудачно ответили на вопрос про MS SQL, скажите сами, что зато Вы имеете опыт работы с Oracle и поэтому быстро сможете «перепрофилироваться».
Способность быстро и самостоятельно разобраться в незнакомой технологии или инструменте ценятся выше, чем имеющиеся знания. Не стесняйтесь хвалить себя. Если после Ваших слов о том, что Вы не разбираетесь в Rational Robot, собеседующий немного поник – гордо скажите, что зато в Silk Test Вы разобрались всего за неделю и сумели многое (конкретизируйте) в нём сделать. Естественно, здесь тоже говорить нужно правду!
Главное – не бояться. Вы ищете работу, а работодатель ищет грамотного сотрудника. Вы оба заинтересованы в результате. Быть принятым на неподходящую работу – значительно хуже, чем получить отказ. Пробуйте, не нервничайте, учитесь! И развивайтесь для себя – а не для «галочки» на собеседовании. Удачи!