Найти тему

Почему тестировщику важно изучать языки программирования?

За последние два года на курсах по основам тестирования ПО появились разделы, посвященные знакомству с программированием. Автор курса «Тестировщик ПО. Быстрый старт в ИТ. Расширенный курс», QA Lead в Тинькофф Антон Тарасов объяснил, почему так произошло и почему языки программирования полезны тестировщику.

Тестировщик со знанием языков программирования лучше понимает разработчика и способен самостоятельно работать с базами данных, а значит, у него больше шансов найти высокооплачиваемую работу и быстрее вырасти как профессионал, чем тестировщиков без знания языков программирования.
Я советую в первую очередь знакомиться с языками программирования Java и SQL — они необходимы для работы с данными. Так, например, SQL нужен для проверки тестовых данных, вставки, обновления и удаления значений тестовых данных в базе данных, а Java используется в работе приложений/библиотек для обработки данных. Сейчас это один из самых популярных и востребованных языков по рейтингу, составленным Институтом инженеров электротехники и электроники.

Алгоритмика

Во главе почти всего и всегда стоят алгоритмы. Описание удобного UX — алгоритм, бинарный поиск — тоже алгоритм, не говоря уже о поиске самого оптимального пути. И во всём этом нужно разбираться. Лучше понимать тонкости разработки ПО поможет алгоритмика.

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

Требования растут

Еще пять — семь лет назад мало кто требовал от тестировщика понимание клиент-серверной архитектуры, написание запросов в API и решения самых простых алгоритмических задач. Именно по этим причинам специалиста по тестированию часто представляли как человека, который тыкает по кнопкам и каким-то волшебным образом находит дефекты. В лучшем случае просили на собеседованиях продемонстрировать написание простого SELECT-запроса в базе данных.

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

-2

Профессия меняется

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

Запасной путь

Если концентрироваться только на техническом развитии, то путь ручного тестировщика может наскучить через несколько лет. Перед всеми встаёт вопрос: что делать дальше.

Первое, что приходит на ум — автоматизация тестирования. Здесь требуется понимание основ объектно-ориентированного программирования, да и код нужно будет писать.

В разработке без программирования тоже никуда. Программирование не будет лишним в тестировании производительности или информационной безопасности.

Мы с Университетом Иннополис разработали программу, из которой вы узнаете, как выглядит современная разработка и тестирование программного обеспечения на курсе «Тестировщик ПО. Быстрый старт в ИТ. Расширенный курс».

-3