Я завершаю запрос api в своем сквозном тесте и хотел бы иметь возможность возвращать другой ответ в зависимости от параметров запроса, которые отправляются.
В настоящее время мой заглушка возвращает статический ответ, независимо от того, что отправлено, и выглядит следующим образом:
cy.server()
cy.route({
method: 'POST',
url: '**/redeem-code',
status: 200,
response: {
status: "Success"
},
delay: 500
})
Я хотел бы иметь возможность проверить опубликованные параметры запроса, а затем условно решить, какой ответ вернуть. Я пытаюсь сделать что-то вроде этого:
cy.server()
cy.route({
method: 'POST',
url: '**/redeem-code',
status: 200,
response: (req) => {
if(req.code == '1234') return { status: "Success" }
else return { status: "Failure" }
},
delay: 500
})
Очевидно, что код выше не работает; это просто пример того, что я пытаюсь сделать.
Я знаю, что Cypress позволяет использовать методы ответа, но я не могу найти синтаксис для того, что я хочу делать в любом месте своих документов. Как получить параметры запроса в методе ответа, чтобы я мог решить, какой ответ вернуть?
javascript,integration-testing,end-to-end,cypress,