TestNg测试框架使用

安装Eclipse插件
  For Eclipse 3.4 and above, enter http://beust.com/eclipse.
  For Eclipse 3.3 and below, enter http://beust.com/eclipse1.
  Maven支持TestNG
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.homeinns.web</groupId>
<artifactId>homeinns-testng</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>homeinns-testng</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.1.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.16</version>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
<!-- <suiteXmlFile>src/test/resources/testng.xml</suiteXmlFile> -->
</suiteXmlFiles>
</configuration>
</plugin>
</plugins>
</build>
</project>
 配置TestNg suite
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite" parallel="none">
<!--enabled="true"让测试生效,也可根据情况关闭某些测试 -->
<test name="Test" enabled="true">
<!--指定参数 -->
<parameter name="Name" value="Irving" />
<parameter name="Sex" value="Man" />
<!--指定测试包 -->
<packages>
<package name="com.homeinns.web.testng.*" />
</packages>
<!--指定测试类 -->
<classes>
<class name="com.homeinns.web.testng.AppTest" />
</classes>
</test> <!-- Test -->
</suite> <!-- Suite -->
TestNg注解配置
public class NgTest {
@Test
public void f() {
}
@Test(
// 在指定的时间内启用3个线程并发测试本方法10次
threadPoolSize = 3, invocationCount = 10, timeOut = 10000,
// 等待测试方法t0测试结束后开始本测试
dependsOnMethods = { "f" },
// 指定测试数据源CLASS和数据源名称(参考注解@DataProvider),返回几条数据会跑测试方法几次
dataProvider = "generate", dataProviderClass = GeneratorRandomNum.class,
// 分组名称
groups = { "checkin-test" })
// 读取配置文件中的参数,配置如上,用@Optional设置默认值
@Parameters({ "Name" })
public void f1(@Optional("name") String name) {
}
}
  测试报告
  运行测试后 在my-testng/test-output/ 目录下(maven \target\surefire-reports)
  gradle配置
subprojects {
apply plugin: 'java'
// Disable the test report for the individual test task
test {
reports.html.enabled = false
}
}
task testReport(type: TestReport) {
destinationDir = file("$buildDir/reports/allTests")
//Include the results from the `test` task in all subprojects
reportOn subprojects*.test
}Grouping TestNG tests
test {
useTestNG {
excludeGroups 'integrationTests'
includeGroups 'unitTests'
}
}


最新内容请见作者的GitHub页:http://qaseven.github.io/

上一篇:虚拟机之The VMware Authorization Service is not running


下一篇:JavaWeb项目部署到服务器详细步骤【基本的jdk安装】