Чего ожидать тестировщикам в 2018: 5 трендов развития тестирования ПО

14 апреля 2018

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

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

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

Тренд 1. Развитие интернета вещей

Количество подключенных к всемирной паутине вещей в мире растет. Сферы их применения разрастаются: энергетика, промышленность, транспорт, здравоохранение и т.д. Причем разработка и внедрение «умных» вещей может вестись как по инициативе бизнеса, так и государства.

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

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

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

Тренд 2. Использование open source инструментов

Уже сегодня все больше компаний используют open source сервисы для управления тестированием и внедрения автоматизации, поддержки Agile и DevOps принципов, управления жизненным циклом дефектов. Это означает, что в ближайшем будущем станут популярны open source инструменты. Гибкие, эффективные, с различными областями применения.

Selenium, Appium, JMeter – инструменты с открытым кодом, которые уже давно используются автоматизаторами.

Однако не только автоматизация тестирования может проводиться посредством общедоступных инструментов. Так, для тестирования API может применяться SoapUI, для нагрузочного тестирования – Apache JMeter.

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

Тренд 3. Еще больше Big Data

Понятие Big Data у всех на слуху уже не первый год. Но далеко не все тестировщики точно знают, что означает это понятие, хотя и должны. Ведь тестирование напрямую связано с данными.

Так что же такое «большие данные»? Определений можно найти много, но все они сводятся к тому, что Big Data связано с объемом и обработкой. Раньше мы тестировали мегабайты и гигабайты, а теперь все чаще речь идет о терабайтах и петабайтах. Однако дело не только в количестве нулей.

Большие данные связаны с так называемыми четырьмя «V»: volume (объем), velocity (скорость, с которой новые данные генерируются), variety (разнообразие данных) и veracity (достоверность данных).

Проблема больших данных состоит в том, что они всегда плохо структурированы. Большинство из них получены из социальных сетей. Это звонки, сообщения, поисковые запросы, картинки, PDF-файлы и прочая информация.

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

Отметим, при тестирование больших данных часто внедряется автоматизация тестирования.

Тренд 4. Agile и DevOps стирают границы

Гибкая методология разработки – Agile и практики DevOps (тесное взаимодействие разработчиков со специалистами по операционной деятельности) определяют место тестировщиков и влияют на взаимодействие внутри команды по тестированию.

Принципы Agile и DevOps будут применяться все шире, и тестировщики должны разбираться в них и уметь к ним адаптироваться.

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

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

Тренды 5. Новые технологии набирают популярность

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

Подведем итог

Чтобы добиться успеха, тестировщики должны следить за изменениями, быть готовыми к переменам и серьезно отнестись к саморазвитию. Если вы уже освоили базовые навыки тестировщика, можете попробовать себя в автоматизации тестирования ПО.

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