Тестирование — одна из самых легких точек входа в ИТ. Специалист по нему — QA-инженер занимается проверкой качества продукта и обнаружением ошибок — багов. Тестирование ПО для начинающих освоить гораздо проще, чем программирование или аналитику данных. Расскажем, как выглядит чек-лист для таких сотрудников и что нужно знать, чтобы устроиться на первую работу.

В качестве источников будут выступать веб-услуги и разработка в YuSMP Group и техники тестирования, которые применяют там в процессе решения задач заказчиков.

Чем занимается тестировщик

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

Результаты работы:

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

А теперь разберем подробнее, какие навыки и знания необходимы тестировщикам.

Теория

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

QA-инженеру нужно знать:

  • Теорию тестирования, что это такое, для чего нужно, как применяется;
  • Виды тестирования, хотя бы основные;
  • Базовую информацию о клиент-серверной архитектуре;
  • Методологию разработки ПО;
  • Как выглядит жизненный цикл бага;
  • Семь этапов тестирования ПО;
  • Что такое валидация и верификация;
  • Какие существуют техники тест дизайна и что это такое;
  • Как правильно составлять баг-репорт, какие у него есть составные части;
  • Чем чек лист тестирования отличается от тест-кейса.

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

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

Техники тест дизайна

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

QA-инженер должен понимать, как имея на руках определенный продукт и требования к нему, оформить чек-лист тестирования. И как правильно декомпозируя задачи, создать сценарии проверки ПО.

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

Базы данных

QA-инженер должен уметь работать в консоли и знать основы языка SQL. С его помощью пишут запросы в таблицах, в которых хранят данные в приложениях.  

Все онлайн курсы по тестированию ПО для начинающих содержат обучение инструментам работы с базами данных. А на собеседовании у кандидата могут попросить написать несложный запрос или сделать срез данных при помощи SQL.

Снифферы

Это программы для перехватки трафика. С их помощью можно изменять и анализировать запросы от фронтенда к бэкенду. Самые популярные из них — Charles и Fiddler. Тестировщик должен уметь ими пользоваться и хорошо ориентироваться в их интерфейсе.

API

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

Обычно для этого используют Postman. В качестве задания на собеседовании могут попросить написать запрос. Например, чтобы проверить, как сервер вносит данные о новом пользователе или, наоборот, удаляет их.

DevTools

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

Тестировщику нужно уметь работать с DevTools, чтобы подменять данные в приложении под тестовые условия.

ПО и приложения

Тестировщик должен знать, как пользоваться программами для фиксации баг-репортов, системами контроля версий (например, Git), ПО для управления проектами (например, Jira).

Дополнительные навыки

Понимать принципы работы операционных систем, разбираться в Linux и других unix-системах, уметь пользоваться командной строкой;

Знать, как работают протоколы JSON и HTTP;

Уметь тестировать мобильные приложения при помощи эмуляторов, например, Android Studio;

Быть в целом технически подкованным человеком.

Soft skill

Знание профессиональных инструментов, теории и техник тестирования — база для успешного трудоустройства. Но пройти собеседования помогают в том числе и «мягкие» навыки.

Тестировщику важно продемонстрировать обучаемость, живой интерес к профессии и коммуникабельность. Последнее необходимо, так как QA-инженер много взаимодействует с другими членами команды.

Больше интересных статей на тему ИТ вы можете найти в блоге студии web-разработки YuSMP Group.