如果测试用例通过,如何指示赛普拉斯做一些动作?
How to instruct cypress to do some actions if the testcase is passed?
我尝试使用 aftereach() 但它会执行测试用例通过或失败。我需要知道我应该使用的上下文,例如条件或什么?
例如:
describe('TestSuite', function(){
it('THIS TEST CASE PASSED', function(){
})
it('THIS TEST CASE FAILED', function(){
})
})
我需要做成这样。如果测试用例通过,则执行操作
...
...
...
如果测试用例失败,请执行操作
...
...
...
您没有提供太多关于您的代码的信息,因此我会建议一个可能不适合您的解决方案。如果断言在之前的测试中失败,我会使用一个设置为“失败”的变量,并使用它来确定第二次测试中的操作,例如
describe('check if first test passed or failed then do A or B', () => {
let result
it('test 1', () => {
cy.request({url: Cypress.env('url')}).its('status').then((status) => {
if (status === 500) {
result = 'fail'
}
})
})
it('test 2', () => {
if (result === 'fail') {
cy.log('Previous test failed, so I did Action A')
Code Action A
}
else
{
cy.log('Previous test passed, so I did Action B')
Code Action B
}
})
})
我尝试使用 aftereach() 但它会执行测试用例通过或失败。我需要知道我应该使用的上下文,例如条件或什么? 例如:
describe('TestSuite', function(){
it('THIS TEST CASE PASSED', function(){
})
it('THIS TEST CASE FAILED', function(){
})
})
我需要做成这样。如果测试用例通过,则执行操作
...
...
...
如果测试用例失败,请执行操作
...
...
...
您没有提供太多关于您的代码的信息,因此我会建议一个可能不适合您的解决方案。如果断言在之前的测试中失败,我会使用一个设置为“失败”的变量,并使用它来确定第二次测试中的操作,例如
describe('check if first test passed or failed then do A or B', () => {
let result
it('test 1', () => {
cy.request({url: Cypress.env('url')}).its('status').then((status) => {
if (status === 500) {
result = 'fail'
}
})
})
it('test 2', () => {
if (result === 'fail') {
cy.log('Previous test failed, so I did Action A')
Code Action A
}
else
{
cy.log('Previous test passed, so I did Action B')
Code Action B
}
})
})