看一下我的目录结构,新建一个包,名字叫做suite,主要为了做套件的测试用。然后在resource下新建一个文件,一般的叫做testng.xml,我这里随便起个名字,叫做suite.xml。
运行的时候鼠标放置在suite.xml上面,右键点击运行
那具体的代码如下:
#SuiteConfig.java package com.course.testng.suite; import org.testng.annotations.AfterSuite;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.BeforeTest; public class SuiteConfig { @BeforeSuite
public void beforeSuite(){
System.out.println("before suite 运行");
} @AfterSuite
public void afterSuite(){
System.out.println("after suite 运行");
} @BeforeTest
public void beforeTest(){
System.out.println("BeforeTest 运行");
} @AfterTest
public void afterTest(){
System.out.println("AfterTest 运行");
}
}
#LoginTest.java package com.course.testng.suite; import org.testng.annotations.Test; public class LoginTest { @Test
public void loginTaobao(){
System.out.println("淘宝登陆成功");
}
}
#PayTest.java package com.course.testng.suite; import org.testng.annotations.Test; public class PayTest { @Test
public void paySuccess(){
System.out.println("支付宝支付成功");
} }
# suite.xml <?xml version="1.0" encoding="UTF-8" ?>
<suite name="test"> <test name="login">
<classes>
<class name="com.course.testng.suite.SuiteConfig"/>
<class name="com.course.testng.suite.LoginTest"/>
</classes>
</test> <test name="pay">
<classes>
<class name="com.course.testng.suite.SuiteConfig"/>
<class name="com.course.testng.suite.PayTest"/>
</classes>
</test> </suite>
运行结果:
由上可以看出,套件包裹着测试用例,测试用例总是在最里面包裹。suite.xml文件有具体的层次结构,测试套件在最外面,一个测试套件可以包裹好几个测试用例。
首先有<suite name="test"> </suite> 标签在最外面,名字随便起一个,我叫test
然后用<test name="login"></test> <test name="pay"></test> 区分两个测试类
之后在用之后的<classes></classes>包裹测试用例,name里面写的是包名.类名
<classes>
<class name="com.course.testng.suite.SuiteConfig"/>
<class name="com.course.testng.suite.LoginTest"/>
</classes>