所以我遇到的问题是我希望能够调用一个模块函数,然后调用 cy.request() 获取响应并以一种很好的方式将其提供给另一个 cy.request() 。
我想让这段代码变得更好:
Cypress.Commands.add('createUser', (user) => {
cy.request({
method: 'POST',
url: 'https://www.example.com/tokens',
body: {
email: 'admin_username',
password: 'admin_password'
}
}).then((resp) => {
cy.request({
method: 'POST',
url: 'https://www.example.com/users',
headers: ({ Authorization: 'Bearer ' + resp.body.token }),
body: user
})
})
})
我想在自己的函数中拥有两个 cy.requests,例如 getAuthToken() 和 createUser(),这样我可以将其包装在 Cypress.Command 中,或者只是一个模块函数并在测试文件中调用
const seedUser = (userObject) => {
getAuthToken().then((token) => {
return createUser(token); //where this would return the created user.
}
}
然后在测试文件中像这样使用
before(()=>{
let user = seedUser();
//or
let user = cy.seedUser();
}
湖上湖
相关分类