《手把手教你》系列基础篇(七十九)-java+ selenium自动化测试-框架设计基础-TestNG依赖测试-下篇(详解教程)
1.简介
今天本来是打算实践应用一下前边的知识点,但是忘记漏了依赖的一个知识点,宏哥个人觉得还是比较重要的,所以今天先说这个,下一篇再讲解和分享实际应用。今天主要讲解一下依赖测试的依赖机制。
2.依赖机制
TestNG提供了两种依赖机制:
1.强依赖关系:所有的被依赖的方法必须被成功运行,才会运行到后续的方法。哪怕只有一个前置方法运行失败了,有依赖关系的后置方法都会被跳过。既有先后顺序关系,也有决定关系。
2.弱依赖关系:不论前置方法是否成功运行,有依赖的后置方法都会得到运行,他们之间仅仅有前后顺序关系,前者的成功与否并不决定后者是否运行。
3.强依赖关系
3.1代码设计
3.2参考代码
package library; import org.testng.annotations.Test; /** * @author 北京-宏哥 * * @公众号:北京宏哥 * * 《手把手教你》系列基础篇(七十七)-java+ selenium自动化测试-框架设计基础-TestNG依赖测试(详解教程) * * 2022年3月05日 */ public class TestDepend { @Test public void failMethod(){ System.out.println("这个方法运行失败"); throw new RuntimeException(); } @Test(dependsOnMethods = {"failMethod"}) public void skipMethod1(){ System.out.println("这个方法永远不会运行,所以不会有输出"); } @Test(dependsOnMethods = {"skipMethod1"}) public void skipMethod2(){ System.out.println("这种依赖连带的我也不会被执行"); } }
3.3运行代码
1.运行代码,右键Run AS->TestNG Suite,控制台输出,如下图所示:
强制依赖情况:前置依赖失败,导致后边这些依赖方法都被跳过了
2.上边这个也许看的不清晰,宏哥给你们看看这个比较清晰,如下图所示:
4.弱依赖关系
4.1代码设计
4.2参考代码
package library; import org.testng.annotations.Test; /** * @author 北京-宏哥 * * @公众号:北京宏哥 * * 《手把手教你》系列基础篇(七十七)-java+ selenium自动化测试-框架设计基础-TestNG依赖测试(详解教程) * * 2022年3月05日 */ public class TestDepend { @Test public void failMethod(){ System.out.println("这个方法运行失败"); throw new RuntimeException(); } @Test(dependsOnMethods = {"failMethod"}, alwaysRun=true) public void skipMethod1(){ System.out.println("经管failMethod执行失败了,但是我是弱依赖,所以我会继续执行"); } @Test(dependsOnMethods = {"failMethod"}) public void skipMethod2(){ System.out.println("我是强依赖,failMethod失败了,我不能执行"); } }
4.3运行代码
1.运行代码,右键Run AS->TestNG Suite,控制台输出,如下图所示:
2.上边这个也许看的不清晰,宏哥给你们看看这个比较清晰,如下图所示:
5.小结
好了,今天时间也不是很早了,宏哥就讲解和分享到这里,感谢您耐心的阅读!
感谢您花时间阅读此篇文章,如果您觉得这篇文章你学到了东西也是为了犒劳下博主的码字不易不妨打赏一下吧,让博主能喝上一杯咖啡,在此谢过了!
如果您觉得阅读本文对您有帮助,请点一下左下角“推荐”按钮,您的
本文版权归作者和博客园共有,来源网址:https://www.cnblogs.com/du-hong 欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利!
公众号(关注宏哥)                                                                                 客服微信