如何在Cypress中使用多个变量?
tl;dr:cypress变量是否可以存储在某个可访问的地方(比如如何在Cypress中使用多个变量?,cypress,Cypress,tl;dr:cypress变量是否可以存储在某个可访问的地方(比如this或类似的地方),或者如果我想一次性访问所有这些变量,我是否必须进入一个无休止的回调周期 长话短说: 我试图用cypress测试覆盖的应用程序在许多不同的数据集上运行,因此为了在测试之前准备测试数据,我通常会进行一些API调用,并且我希望处理它们的结果: 示例: 测试应包括“删除任务”功能。作为测试数据,我想在API上预先创建一个任务。为此,我需要打以下电话: 调用“../users/me”获取我的用户ID(所需参数之一)
this
或类似的地方),或者如果我想一次性访问所有这些变量,我是否必须进入一个无休止的回调周期
长话短说:
我试图用cypress测试覆盖的应用程序在许多不同的数据集上运行,因此为了在测试之前准备测试数据,我通常会进行一些API调用,并且我希望处理它们的结果:
示例:
测试应包括“删除任务”功能。作为测试数据,我想在API上预先创建一个任务。为此,我需要打以下电话:
cy.getUserID().then((userId)=>{
cy.wrap(userId).as('userId'))
})
cy.getAllUsersForTenant()。然后((用户)=>{
cy.get('@userId')。然后((userId)=>{
const result=users.find((escalationUserId)=>escalationUserId!==userId)
cy.wrap(result.id).as('assigneeId'))
})
})
cy.get('@assigneeId')。然后((assigneeId)=>{
cy.get('@userId')。然后((userId)=>{
//使用assigneeId和userId进行POST调用
})
})
现在这其实没什么大不了的,但我可以想象我需要2个以上的变量,我需要添加更多的嵌套回调,还是有办法将这些变量存储在一个可访问的位置?我通过查看其他票据找到了答案-如果我使用
函数()
而不是箭头函数,可以共享此
上下文