如果测试用例通过,如何指示 cypress 执行某些操作?
Posted
技术标签:
【中文标题】如果测试用例通过,如何指示 cypress 执行某些操作?【英文标题】:How to instruct cypress to do some actions if the testcase is passed? 【发布时间】:2021-12-13 06:04:40 【问题描述】:我尝试使用 aftereach() 但它会执行测试用例通过或失败。我需要知道我应该使用的上下文,例如条件还是什么? 例如:
describe('TestSuite', function()
it('THIS TEST CASE PASSED', function()
)
it('THIS TEST CASE FAILED', function()
)
)
我需要把它变成这样。如果通过了测试用例,请执行操作 ... ... ... 如果测试用例失败,请执行操作 ... ... ...
【问题讨论】:
请提供足够的代码,以便其他人更好地理解或重现问题。 【参考方案1】:您没有提供太多关于您的代码的信息,所以我会建议一个可能不适合您的解决方案。如果断言在前一个测试中失败,我将使用一个设置为“失败”的变量,并使用它来确定第二个测试中的操作,例如
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
)
)
【讨论】:
以上是关于如果测试用例通过,如何指示 cypress 执行某些操作?的主要内容,如果未能解决你的问题,请参考以下文章
Cypress系列- Cypress 编写和组织测试用例篇 之 .skip() 和 .only() 的详细使用
如果第二次测试失败,cypress 将停止执行,但我需要继续运行其他测试?在赛普拉斯
Cypress系列(12)- Cypress 编写和组织测试用例篇 之 断言
Cypress系列(12)- Cypress 编写和组织测试用例篇 之 断言