【问题标题】:is there an equivalent to cypress the dependsonmethods in testNG selenium?testNG selenium 中是否有与 cypress 等效的依赖方法?
【发布时间】:2020-07-10 15:03:50
【问题描述】:

在 cypress 中等效的 testNG 中的测试注释中是否有像依赖方法一样简单?

如果在 selenium 测试注释中看起来像这样?

@Test()
public void tc1(){
}

@Test(dependsOnMethods= {"tc1"})
public void tc2(){
}
@Test(dependsOnMethods= {"tc1"})
public void tc3(){
}

如果我没记错的话,这有点像一个带有 2 个子函数的父函数,当里面的父条件错误时,这两个子函数将被跳过。

在赛普拉斯中,我知道有回调和承诺,但取决于你想要的断言类型,它对我来说变得更加复杂。我是柏树的新手

如果问的不多,请告诉我,你能至少提供一个例子

谢谢

【问题讨论】:

    标签: cypress


    【解决方案1】:

    赛普拉斯没有 dependsOnMethods 像 TestNG runner 提供的那样,因为它们都是不同的。但是无论你想实现什么,你都可以通过 Mocha 提供的 hooks 来实现,因为 Cypress 本身就有 Mocha 作为一个测试框架。

    注意:这是你可以用钩子做的所有事情,你的问题应该用下面的代码解决。如果您有任何具体要求,请提出。

    describe('test suite', () => {
      before(() => {})
      beforeEach(() => { // put tc1() functionality
      })
    
      it('tc2 functionality', () => {
        // now tc2() depends on beforeEach block where tc1 functionality is done
      })
    
      it('tc3 functionality', () => {
        // now tc3() depends on beforeEach block where tc1 functionality is done
      })
    })
    

    【讨论】:

    • 非常感谢您的帮助。感谢您的帮助.. 似乎 TestNG 注释依赖方法比柏树中的方法简单,我希望他们能做出像这样简单的事情
    • 在这种情况下,tc1 将在其他 tc 之前运行。 tc1 => tc2 tc1 => tc3 您基本上一直在执行重复的测试运行。我建议不要有这种依赖关系,而是想办法让 tc2 和 tc3 不依赖于 tc1
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-09
    • 2017-10-23
    • 2012-03-17
    • 2013-06-03
    相关资源
    最近更新 更多