0

我尝试使用 aftereach() 但它会执行测试用例通过或失败。我需要知道我应该使用的上下文,例如条件还是什么?例如:

describe('TestSuite', function(){

 it('THIS TEST CASE PASSED', function(){

})

it('THIS TEST CASE FAILED', function(){

})

})

我需要让它像这样。如果通过了测试用例,请执行操作
... ... ...
如果测试用例失败,请执行操作
... ... ...

4

1 回答 1

0

您没有提供有关您的代码的太多信息,因此我将建议一个可能不适合您的解决方案。如果断言在前一个测试中失败,我将使用一个设置为“失败”的变量,并使用它来确定第二个测试中的操作,例如

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
            }

        })
})
于 2021-10-28T09:55:39.753 回答