Домой » Практика » API тестирование с помощью Postman Collections в AWS CodePipeline

API тестирование с помощью Postman Collections в AWS CodePipeline

aws postman

Создание Git — репозитория с использованием AWS CodeCommit

AWS CodeCommit — сервис контроля версий, предоставляемый AWS. С его помощью вы можете создавать и управлять Git — репозиториями.

Для данного примера создадим новый репозиторий с именем postman-sample для этого перейдём по следующему пути: AWS Console > Developer Tools > CodeCommit

Далее клонируем созданный репозиторий на локальный компьютер.

Экспорт Postman Collection

Теперь нам необходимо экспортировать Postman collection, здесь нам поможет newman cli

Picture2.png

Выбираем опцию Collection v2 в диалоговом окне Export Collection и жмём Export

Picture3.png

Сохраняем коллекцию в каталоге, куда мы ранее клонировали репозиторий.

Создание buildspec файла

Чтобы AWS CodeBuild знал как мы хотим запускать коллекцию создадим buildspec файл. Перед запуском коллекции необходимо также установить newman npm пакет in pre_build фазе и затем вызвaть newman cli с указанием коллекции, которую мы хотим запустить в build фазе. Также при необходимости мы можем в конце описать опции для генерируемого в виде HTML отчёта. После того как CodeBuild разберётся с нашей коллекцией, мы сможет залить получившийся файла в S3:

Picture5.png

Теперь осталось закоммитать и запушить коллекцию вместе с buildspec файлом прямо в master ветку. По данной ссылке вы можете скачать код примера.

Создание S3 Bucket для сохранения отчёта

Создадим S3 bucket для сохранения отчёта, который генерируется при помощи newman. Также мы можем использовать это файл для дальнейшей отчётности.

Переходи AWS Console > Storage > S3 и задаём имя postmanreport (имя должно быть уникальным). Можно использовать контроль версий в S3 bucket, если хотите иметь историю отчётов под рукой.

Picture6.png

Создание AWS CodeBuild проекта

Мы будем использовать CodeBuild для получения изменений из CodeCommit и запускать коллекцию используя newman. У нас уже есть buildspec, в котором уже есть последовательность для выполнения.

Для этого идём AWS Console > Developer Tools > CodeBuild и создаём проект под именем postman-sample.

Устанавливаем Source Provider как AWS CodeCommit и в Repository выбираем postman-sample:

Picture8.png

Нам надо окружения для запуска джобы для билда. Сконфигурируем Ubuntu/Node.js окружение и настройки артефактов в соответствии со скриншотом:

Picture9.png

Следующим шагом настроим Service role. Создаём новую роль и кликаем Continue

Picture10.png

CodeBuild проект готов. Мы можем протестировать его с помощью ручного запуска билда.

Picture11.png

Настройка AWS CodePipeline

В конце нам осталось настроить запуск CodeBuild  после каждого коммита CodeCommit при помощи триггеров в AWS CodePipleine.

Идём AWS Console > Developer Tools > CodePipeline и создаём пайплайн postman-sample:

Picture12.pngВыбираем AWS CodeCommit в качестве Source Location 

Picture13.pngВ качестве Build provider выбираем AWS CodeBuild .

Picture14.pngМы хотим только запустить и дождаться выполнения тестов. Деплоить мы ничего не будет, поэтому выбираем No Deployment в Deploy.

Picture15.pngВ конце мы настраиваем AWS Service role.

Picture16.pngВ IAM у нас идентификатор новой роли.

Picture17.pngУбеждаемся, что роль установлена.

Picture18.png

Проверяем все настройки и подтверждаем создание пайплайна.

Picture19.png

В случае успеха получаем специальное уведомление.

Picture20

После успешного прогона должны появиться зелёные нотификаторы.

Picture21

После успешного запуска можно просмотреть отчёт.

Picture22.png

Далее представлен примерный вид отчёта.

Picture23.png

Также можно настроить Lambda функции или SNS для отсылки уведомления с отчётом.

Добавить комментарий

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*
*