Тестирование – важный этап при разработке программного обеспечения. Выполняется или непосредственным разработчиком, или специально обученным человеком. Очень часто – отдельной командой специалистов.

В данной статье будет рассказано о том, как пройти собеседование на тестировщика, а также с какими целями и задачами будет сталкиваться соискатель. А еще стоит изучить этапы тестирования и вопросы, которые могут задать потенциальному работнику.

Определение тестинга

Тестирование – процедура исследования или испытания игры/программного обеспечения, имеющая в качестве цели проверку соответствия реального поведения с ожиданиями. Помогает:

  • обнаруживать ошибки;
  • обеспечивать интеллектуальную проверку ПО;
  • проводить техническое обследование приложения или игры;
  • наблюдать за ходом выполнения программы в специальных условиях;
  • отслеживать жизненный цикл контента;
  • выявлять ситуации и обстоятельства, которые можно отнести к нежелательным для ПО.

Существуют разные виды тестирований. Для каждого принято нанимать на работу или отдельного человека, или специалиста-универсала (что обойдется дороже). Главное – такой специалист должен хорошо разбираться в разработке ПО: этапы, методологии, жизненный цикл, техники и виды тестирования и т. п.

Виды тестирования

Вопрос по проведению тестов важен для каждого проекта – как для небольшого, так и для крупномасштабного. Это – основа, которая поможет определять работоспособность полученного продукта.

Существуют разные виды тестирования:

  1. Статическое. Не требует для проведения проверки непосредственного запуска программы. Ему отдают предпочтение в самом начале работы – инженеры проводят проверку проектной документации, а также спецификаций. Они будут вычитывать уже готовый код.
  2. Динамическое. Требует запуска соответствующей утилиты. Такой вариант осуществляется после статического. Тестеры будут проверять поведение контента, когда тот запущен. Это помогает определить время отклика, а также нагрузку на память и процессор задействованного устройства.
  3. Функциональное. Это то, как ПО справляется с изначально поставленными задачами.
  4. Нефункциональное. Позволяет оценить производительность системы, а также ее надежность и безопасность. Отвечает за нормализацию функционирования софта с окружением – операционной системой, а также подключенным оборудованием.
  5. Тестирование по принципу «черного» ящика. В этом случае работать предстоит только с интерфейсом. Разработчику/тестировщику не потребуется программная кодификация. Будет оцениваться производительность программы, а также проведена проверка на наличие всех изначально поставленных задач проекта. Осуществляется поиск ошибок в интерфейсе.
  6. Тестинг по типу «белого» ящика. Работник будет иметь доступ к коду. Он отвечает за проверку структуры и логики всего программного обеспечения, а также ее отдельных компонентов. Обычно такое тестирование непосредственно выполняет разработчик/программер.
  • Ручное. Поиск багов, неполадок и ошибок вручную. Сторонние программы и приложения для реализации задачи не привлекаются.
  • Автоматическое. Для того, чтобы его осуществить, нужно использовать специальное ПО. Оно помогает без ручной проверки обнаружить неполадки софта.

Все это – задачи тестировщика. Такой специалист может концентрироваться на одном типе тестирования или сразу на нескольких. Обычно вопрос решается за счет повышения оплаты труда тестера, если у него уже есть достаточный опыт и багаж знаний.

Проверка на разных этапах

Тестирование – это многоуровневый процесс. На каждом этапе разработки принято проверять отдельные моменты, а также решать конкретные вопросы:

  1. Модульное тестирование. Осуществляется в самом начале. К тому моменту уже готовы куски кода. Приложение тестируется по блокам (модулям): классам, объектам, функциям и так далее. Тесты будут писаться отдельно для каждого элемента. Это – тестирование работоспособности части кода. Относится к низшему уровню.
  2. Интеграционное тестирование. Второй этап. Позволяет определить связи между уже проверенными компонентами. Здесь решается вопрос взаимодействия ПО с операционной системой и оборудованием.
  3. Системный тестинг. Осуществляется в момент принятия заказчиком итогового софта. Цель – убедиться в том, что продукт будет отвечать изначально установленным требованиям.

На разных этапах разработки выбирают различные цели процесса:

  1. Во время написания кода нужно решить вопрос по обнаружению максимального количества ошибок и сбоев для своевременного исправления.
  2. При приемочном тестинге проводится демонстрация работоспособности софта.
  3. Во время сопровождения утилиты тестирование помогает решать вопросы, связанные с багами и неполадками. Речь о тех ошибках, что появились после внесения корректировок в программное обеспечение.

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

Зато при грамотно составленном коде можно надеяться на то, что критических ошибок в приложении не будет обнаружено ни на одной стадии реализации проверки.

Тестировщик – это…

Тестировщик – специалист, который:

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

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

О личностных качествах

Вопрос о том, почему некоторым удается построить карьеру в выбранном направлении, а кому-то нет, интересует многих. Мало хотеть заниматься тестингом. Нужно еще обладать определенными качествами личности. Без них добиться успеха окажется весьма проблематично, как и в любой сфере деятельности.

Хороший тестировщик – это человек, обладающий следующими личностными качествами:

  • стрессоустойчивость;
  • наличие хорошо развитой логики и критического мышления;
  • конструктивное восприятие критики;
  • креативное мышление, которое помогает найти оригинальное решение поставленных задач;
  • умение выполнять монотонную работу – иногда тестинг требует именно этого;
  • навыки работы в команде;
  • коммуникабельность;
  • быстрая обучаемость.

Также основным качеством будет являться усидчивость. Неплохо, если тестер будет иметь хорошее самообладание и самодисциплину. Это особо актуально для тех, кто работает над крупным проектом без большой команды.

Знания

Собеседовать позовут лишь того, кто подготовит грамотное резюме. Попасть на беседу с потенциальным работодателем – это лишь первый этап трудоустройства. Далее предстоит продемонстрировать свои навыки и умения. Без определенного багажа знаний тут не обойтись.

Хороший тестер должен разбираться в:

  • компьютерной графике (особенно если речь идет о работе с играми);
  • языках программирования (C++, JS, Java, Python и других – чем больше, тем лучше);
  • иностранных языках (английский – это минимальная база);
  • в видах и типах тестирования;
  • базах данных;
  • бизнес-аналитике (если речь идет о проекте для продвижения какого-то дела).

У тестировщиков игр дополнительно должны быть познания в игровой индустрии. В идеале – личный опыт. Такой сотрудник будет не только специалистом, но и потенциальной целевой аудиторией. Поэтому ему будет оказано большее внимание, чем остальным кадрам.

Некоторые тестеры, которые только выбрали этот путь карьеры, могут обладать минимальными знаниями в области IT. По мере набора опыта придет и необходимый багаж знаний.

Как проходит собеседование

Вопрос о том, как проходит собеседование при трудоустройстве на роль выбранного кадра, беспокоит каждого потенциального соискателя. Полный перечень того, чем будут интересоваться в компании работодателя предугадать трудно.

Для начала стоит запомнить, что «собеседовать» будут по определенному плану:

  1. Отправка резюме работодателю.
  2. Изучение предложенной информации о соискателе с последующим приглашением на личную беседу.
  3. Собеседование со специалистом по подбору кадров. Обычно на данном этапе ждут ответов на вопросы, касающиеся резюме.
  4. Тестовое задание. Иногда оно небольшое, а где-то – крупное. Бывает и так, что при трудоустройстве вообще отсутствует тестировочная часть: достаточно личной беседы с потенциальным работодателем.

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

О вопросах

Собеседовать соискателя – сложная и ответственная задача, к которой необходимо подойти основательно. В Москве и других регионах России (и мира – тоже) тестировщики – это востребованные кадры. Но найти хорошего специалиста в данной области бывает проблематично.

Задавать во время беседы могут совершенно разные вопросы. Вот самые распространенные из них:

  1. Почему выбрали именно это направление?
  2. Сколько хотите зарабатывать?
  3. Какой график работы хотели бы иметь?
  4. Что умеете делать кроме тестинга?
  5. Какие цели и задачи преследует тестирование?
  6. Какие виды тестинга знаете?
  7. Что относят к тест-кейсам?
  8. Какую роль в команде принимали ранее?
  9. Какие у вас были проекты раньше?
  10. Зачем вообще нужно тестирование?

Это – основные вопросы, которые встречаются более часто на практике. Они помогают понять, почему человек решил пойти по пути тестинга, а также какие цели преследует. Если сотрудник всего лишь гонится за зарплатой, в выбранной области добиться определенных высот ему вряд ли удастся. А здесь можно посмотреть, какие еще вопросы могут встречаться.

P. S. Большой выбор курсов по тестированию есть и в Otus. Среди них широко представлено и направление автоматизации. Есть варианты как для продвинутых, так и для начинающих пользователей.