Инструменты Java Advanced: REST Assured - qa-guru/knowledge-base GitHub Wiki
REST Assured
REST Assured — один из самых популярных инструментов для тестирования REST API. Представлен в виде библиотеки Java. Широко используется для тестирования веб-приложений на базе XML и JSON. Полностью поддерживает работу с методами GET
, PUT
, PATCH
, POST
и DELETE
.
REST Assured относительно простая библиотека с интуитивно понятным синтаксисом. Из-за большой популярности REST Assured в Сети можно найти большое количество подробных примеров кода и инструкций. Официальна документация также представлена в хорошем качестве и обновляется по мере выхода новых версий.
Подключение
REST Assured подключается к проекту как все библиотеки. В файле build.gradle
необходимо добавить зависимость:
dependencies {
testImplementation(
"io.rest-assured:rest-assured:5.3.0"
)
}
Актуальную версию можно посмотреть на сайте или в документации
Как это работает
REST Assured работает по принципу Given-When-Then:
- given — определяет, что будет отправлено в запросе;
- when — с каким методом будет передано и к какому эндпоинту;
- then — как будет оцениваться полученный ответ.
С помощью этих ключевых слов формируется запрос. Пример запроса с помощью REST Assured может выглядеть так:
public class RestTests {
@Test
void checkTotal() {
given()
.when()
.get("https://selenoid.autotests.cloud/status")
.then()
.body("total", is(20));
}
}
Про методы API
К веб-ресурсу надо обращаться не понятном ему языке. Для вес-сайтов на базе REST API используются специальные методы. С их помощью можно отправлять данные, получать, удалять и изменять:
GET
— метод для чтения данных, информация просто передаётся с сервера и никак не изменяется;POST
— создание и регистрация новых записей;PUT
— изменение и обновление данных;DELETE
— удаление данных.