假设我在 window.fetch
上有一个 cypress 测试,像这样:
describe('My test', () => {
beforeEach(() => {
cy.visit('http://localhost:3000', {
onBeforeLoad(win) {
cy.spy(win, 'fetch')
},
})
我可以断言 POST 请求具有特定的 URL,如下所示:
cy.window().its('fetch').should('be.calledWith', 'http://whatever.com/stuff')
但我不知道如何针对该请求的正文进行断言。
例如,我如何断言它包含 my_param=10
?
谢谢!
最佳答案
没人吧?好吧,如果其他人偶然发现了这个,我已经弄清楚了,下面是你如何做到的:
cy.window().its('fetch').should(
'be.calledWithMatch',
'http://your-url.com/here',
sinon.match.has('body', sinon.match('your_param=expected_value')))
请记住将 sinon 作为单独的依赖项导入。
您可以多次使用这一行来对多个变量进行断言。
关于javascript - Cypress :如何针对 window.fetch POST 请求正文的内容进行断言?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52376460/