Автор: Кристин Джеквони (Kristin Jackvony) Оригинал статьи Перевод: Ольга Алифанова
Мне очень нравится, что в тестировании API очень легко организовывать тесты и переменные окружения. Я люблю, когда тест-наборы моментально готовы к использованию, и их можно запустить одной кнопкой при регрессионном тестировании, или же запускать автоматически как часть процесса непрерывной интеграции.
В этот раз мы поговорим о паттернах организации тестов, которые можно использовать для тестирования API. Я обсуждаю их в контексте Postman, но эти концепции останутся неизменными, какой бы платформой для API-тестирования вы ни пользовались.
Для начала давайте поговорим об окружениях. Если вы помните из прошлой статьи, то окружение – это коллекция переменных в Postman. Настраивать окружения можно двумя способами, и чтобы их разъяснить, я буду пользоваться сценариями. В обоих сценариях мы предположим, что у меня есть приложение, которое начинает свой жизненный цикл в разработке, затем переезжает в QA, подготовку и, наконец, в релиз.
В моем первом сценарии у меня есть API, которое получает и обновляет информацию о пользователях моего сайта. В каждом продуктовом окружении (Dev, QA, Staging, Prod) тест-пользователи различаются. У них будут разные ID, имена и фамилии. Ссылки на окружения также будут различными. Однако мои тесты не изменятся: во всех окружениях я буду получать информацию о пользователе (GET) и обновлять ее (PUT).
Сбор данных и составление отчётов о статусе тестирования и имеющихся проблемах и предоставление информации остальным членам компании;
Постоянное совершенствование процессов тестирования.
Требования, которые мы предъявляем:
Опыт работы тест инженером от 1-го года;
Практический опыт построения процесса и проведения тестирования;
Опыт программирования на любом из скриптовых языков;
Знание английского языка на уровне Intermediate (важны навыки переписки, разговорный английский не очень критичен);
Опыт написания тестовых сценариев.
Плюсами будут:
Опыт программирования на Java/C/C++
Знание ООП, будет плюсом.
Опыт работы с Mininet
Базовые знания Unix систем (ssh, основные команды навигации, запуск/остановка сервисов, cron)
Мы предлагаем:
Полную занятость;
Профессиональный рост и самореализацию;
Оформление по ТК РФ;
ДМС (страховая компания с рейтингом А++);
Уютный офис с мини-кухней;
Возможна частично удаленная работа.
Описание проектов:
B4N NFV:
Набор высокопроизводительных, масштабируемых сетевых сервисов разработанных на C++ с использованием Intel DPDK.
B4N SW:
Набор прошивок для коммутаторов на базе ASICs Broadcom/Marvell с реализацией OpenFlow 1.3, совместимых как с B4N продуктами, так и продуктами других производителей. Разработка ведется на C/C++ с использованием SDK производителей ASICs.
B4N CTL:
Распределенная высоконагруженная система, разработанная на языке Java. Решает задачи управления OpenFlow коммутаторами за счет прогрузки правил после анализа пакетов из потока на порт коммутатора. Ориентирована на использование в сетях сервис провайдеров и больших корпоративных сетях.
Технологии: Core Java, Jetty, MongoDB, Infinispan, JGroups, Spring
B4N ORC:
Распределенная система, обеспечивающая оркестрацию и мониторинг компонентов как B4N, так и сторонних производителей.
Технологии: AngularJs, Spring, REST, NetConf, Yang