article-spots
article-carousel-spots
programs
Технологии

API, облака и производительность: три современных тренда в автоматизации тестирования

28 июля 2021

Когда профессия Test Automation специалиста только зарождалась, этап "тестирования", в основном, состоял из поиска ошибок в коде. Данное направление и сейчас занимает важную часть проектного цикла, но область задач специалиста по автоматизированному тестированию уже не ограничивается только этим. Вместе с Петром Малышевым, Lead Software Test Automation Engineer в EPAM, мы рассмотрим три трендовых направления в автоматизированном тестировании, и для каждого ответим на вопросы: что это такое, почему это стало трендом и какая от этого польза TA инженерам. Далее – от первого лица.

Как вы, наверное, уже знаете, в EPAM University доступны курсы, где упорные и талантливые (хотя это необязательно; у меня не было особых талантов, но все же я прошел) люди могут начать карьеру в IT. Учиться автоматизированному тестированию нелегко, ведь эта профессия требует от специалиста углубленных знаний во многих технических темах, а также развитые софт-скиллы и уверенное знание языка программирования (например C# и Java).

Почему же молодые специалисты выбирают это направление?

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

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

Тестирование API

Что это такое?

Тестирование API – это тестирование веб-сервисов, большинство которых базируется на REST. Эти веб-сервисы или образуют специальный API (интерфейс, который пользователи могут вызвать через HTTP + JSON запросы), или предназначены в основном для использования веб-приложением.

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

Почему это тренд?

Еще 6 лет назад автоматизация в основном применялась для UI тестирования, однако сейчас мы наблюдаем обратный процесс: продукты с legacy кодом постепенно отмирают, тогда как все больше программ поддерживают API в том или ином виде. Как следствие – сейчас уже сложно найти желающих работать на проектах исключительно с тестированием пользовательского интерфейса, а тесты API составляют основу любой современной стратегии TA.

Каковы преимущества для TA инженеров?

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

И хотя я инженер с 7-летним опытом, я все еще сталкиваюсь с незнакомыми техническими проблемами в тестировании API, которые можно решить элегантно: путем выбора наилучшего решения из нескольких возможных. Именно поэтому мне очень нравится эта ниша – возможно, такая логика заставит и вас присмотреться к этому тренду.

Тестирование производительности

Что это такое?

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

Почему это тренд?

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

Проводить базовые тесты производительности – хорошая идея для большинства проектов средних масштабов, тогда как наличие отдельного аналитика производительности не всегда оправдано.

Каковы преимущества для TA инженеров?

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

Облачная среда

Что это такое?

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

Почему это тренд?

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

Каковы преимущества для TA инженеров?

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


В завершение: неважно, являетесь ли вы инженером по автоматизации тестирования или только собираетесь им стать. Перечисленные тренды могут стать для вас полезной информацией для легкого поиска первой работы или хорошим поводом актуализировать свои знания. И, конечно, делать это лучше всего в EPAM University – присоединяйтесь к активному набору Test Automation и становитесь частью нашей большой команды!