Postman - автотесты для REST HTTP API запросов

Категория: IT / WEB / Internet

Пример реализации автоматических тестов REST HTTP API запросов с помощью Postman.

Примеры тестов JSON API в Postman

pm.test("groups/:id is valid", function () {
    pm.response.to.have.status(200);
    pm.response.to.have.header('Content-Type', 'application/json; charset=utf-8');    
    pm.response.to.have.jsonBody('main.id', 1);
    let group = pm.response.json().main;    
    pm.expect(group.id).to.equal(1);
});

Методы тестирования Postman

pm.response.to.have.status(200);               # Статус ответа: 200 OK
pm.response.to.be.ok;                          # Статус ответа: 200 OK

pm.response.to.have.jsonBody('success');       # JSON содержит свойство success
pm.response.to.have.jsonBody('success', true); # JSON содержит свойство success и его значение равно true
pm.response.to.have.jsonBody('main.id', 1);    # JSON содержит свойство main.id со значением 1

var envVar = pm.environment.get('env');        # Получить значение переменной
let json  = pm.response.json();                # Получить объект JSON ответа
let user = pm.response.json().main;

pm.expect(json.success).to.equal(true);        # Значение json.success: true
pm.expect(user.email).to.include("@")          # Строка содержит @

Отправка запроса из тестового окружения Postman

pm.sendRequest('https://postman-echo.com/get', function (err, res) {
    if (err) {
        console.log(err);
        return;
    }

    pm.environment.set("token", "new_value");
});

#postman, #REST API, #qa, #tests