Домой » Практика » java » Сделайте тестирование API проще с помощью Karate

Сделайте тестирование API проще с помощью Karate

KarateЕсли вам необходимо тестировать API но у вас слабый технический бэкграунд и вы недостаточно скилованы для этого, тогда попробуйте Karate. Это оперсорсный проект от Intuit. Он предназначен для автоматизированного тестирования API и имеет весь необходимый функционал, чтобы сделать этот процесс более простым и приятным.

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

Поскольку Karate является DSL и базируется на Сucumber-JVM, то вы можете запускать тесты и генерировать отчёты по их результатам, как в любом другом Java – проекте. Но вместо написания Java – кода вы пишете тесты на языке, предназначенном для работы с HTTP, JSON или XML.

Хоть для работы с Karate не требуется какой-либо подготовки, всё равно не лишним будет хотя бы базовое понимание HTTP, JSON, XML, JsonPath, XPath или JavaScript.

Далее мы рассмотрим установку Karate и работу с его базовым функционалом.

Установка зависимостей

Maven

Для Maven необходимо установить следующие две зависимости

Gradle

Тут зависимости те же самые

Структура проекта

Файлы скриптов Karate имеют аналогичное Cucumber расширение: .feature. Вы вольны организовать строение проекта, как хотите, можно и придерживаться строения по конвенции Java.

Maven обычно определяет место для файлов, отличных от .java, по пути src/test/resources, однако, разработчики Karate рекомендуют хранить их рядом.

Как и при использовании Cucumber, для Karate нужен “Runner” для запуска фича-файлов. Но есть и отличительная черта: нету т.н. класса с определением стэпов, использующихся при написании фича-файла. В этом состоит вся магия Karate.

Допустим есть у нас незамысловатый класс TestRunner.java

Тогда необходимо для работы с ним подредактировать наш pom.xml

Пример автотеста API

Допустим, есть у нас API (https://some-api.com/api/users), который возвращается список пользователей в JSON формате:

Сценарий будет выглядеть так:

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

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

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

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

*
*