单元测试框架系列教程7-属性dependsOnMethods介绍1
这篇来介绍@Test下的属性dependsOnMethods,看字面意思可以知道。如果要运行当前的测试用例,需要先运行指定的依赖方法后,再运行当前用例。
直接来看看例子。
package com.java.learn;
import org.testng.annotations.Test;
/**
* create by Anthony on 2017/11/02
*/
public class TestNG_Demo2 {
@Test
public void test1(){
System.out.println("test1");
}
@Test
public void test2(){
System.out.println("test2");
}
@Test
public void test3(){
System.out.println("test3");
}
@Test
public void test4(){
System.out.println("test4");
}
@Test
public void test5(){
System.out.println("test5");
}
}
上面运行结果,默认是按照函数方法名的排序来的,所以执行顺序是这样的。
Test1->test2->test3->test4->test5
场景1:在运行test1之前,设置依赖方法是test5.
package com.java.learn;
import org.testng.annotations.Test;
/**
* create by Anthony on 2017/11/02
*/
public class TestNG_Demo2 {
@Test(dependsOnMethods={"test5"})
public void test1(){
System.out.println("test1");
}
@Test
public void test2(){
System.out.println("test2");
}
@Test
public void test3(){
System.out.println("test3");
}
@Test
public void test4(){
System.out.println("test4");
}
@Test
public void test5(){
System.out.println("test5");
}
}
注意上面的依赖方法名称是花括号,容易不小心写成小括号。测试运行一下。
确实发现了先执行test5,test1在test5后面执行。但是这里,为什么把test1放到最后执行了,暂时不清楚。
场景2:一个用例,依赖多个其他方法
package com.java.learn;
import org.testng.annotations.Test;
/**
* create by Anthony on 2017/11/02
*/
public class TestNG_Demo2 {
@Test(dependsOnMethods={"test3","test4"})
public void test1(){
System.out.println("test1");
}
@Test
public void test2(){
System.out.println("test2");
}
@Test
public void test3(){
System.out.println("test3");
}
@Test
public void test4(){
System.out.println("test4");
}
@Test
public void test5(){
System.out.println("test5");
}
}
运行效果:
场景3:依赖方法的异常表现
@Test(dependsOnMethods={"test6"})
例如我在test1前面加上依赖方法是test6,但是在当前包和类文件没有这个test6的方法,运行就会报异常。
- 无关年龄!这个老年痴呆测试,5题全错的要小心了
- 软件测试面试题大考问——搜狐篇
- 心理测试:你的受虐指数是多少?
- 上海市教委正调查“3E”英语测试 官微相关信息被删
- 12.16相约京东质量测试论坛
- 趣味小测试,算出你年龄
- 【权健】五级梯队框架已搭建完成 权健青训符合足协新规
- 【宝鸡心理健康】心理测试 | 你的心理年龄有多大?
- 日本街头路人测试 !据说人在打电话的时候给什么东西都会接 ~
- 爽!广东高速未来可免费连WiFi!东莞这段高速正在测试!