Как войти cypress.io, cy.request в файл - PullRequest
2 голосов
/ 01 октября 2019

У меня есть следующий рабочий код для регистрации ответа. Теперь пытаюсь выяснить способ регистрации запроса. Как мы можем войти? Он просто возвращает undefined.

Я пытался использовать log = true в cy.request, но он регистрируется только в консоли браузера. Лучше всего будет записать в файл.

it('Query Endpoint', () => {
    request = cy.request(
        {
            method: 'POST',
            url: '/api/service', 
            auth: {
                username: Cypress.env('username'),
                password: Cypress.env('password')
            },
            headers: {
                'Content-Type': 'application/json',
            },
            body: {},
            log: true
        })
    .should((response) => {
        
        cy.log(request.body) // <-- how can you log the request?
        cy.writeFile('cypress/responses/api-service.json', request.body) // <-- how can you log the request?

        expect(response.status).to.eq(200)
        cy.writeFile('cypress/responses/api-service.json', response.body)
    })

})

Любая помощь приветствуется.

1 Ответ

2 голосов
/ 02 октября 2019

Возможно, вам придется использовать .then вместо should, и request должно разрешить внутреннее обещание. Он пишет для меня файл в папке прибора. Но в ответе я оставил все те же path, что и в вашем вопросе.

it('Query Endpoint', () => {
        cy.request(
            {
                method: 'POST',
                url: '/api/service', 
                auth: {
                    username: Cypress.env('username'),
                    password: Cypress.env('password')
                },
                headers: {
                    'Content-Type': 'application/json',
                },
                body: {}
            })
            .then((request) => {
                const someRequest =  JSON.stringify(request);
                cy.writeFile('cypress/fixtures/api-service.json', someRequest)
                //...rest of the code 
          })

    })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...