TestNG 接口测试专题(四)
如果说谁是目前接口测试的第一利器,非TestNG莫属,今天带大家学习下这个框架,很多知名的企业也在TestNG上封装自己牛逼的测试框架,更是必学不可了。
1.TestNG介绍
TestNG是一个测试框架,其灵感来自JUnit和NUnit,但同时引入了一些新的功能,使其功能更强大,使用更方便。
TestNG设计涵盖所有类型的测试:单元,功能,端到端,集成等,它需要JDK5或更高的JDK版本。
一个典型的TestNG测试需要三个步骤
编写测试的业务逻辑,然后把TestNG的解释插入代码
在testing.xml或build.xml文档中增加测试相关的信息,如类名、希望运行的group等
运行TestNG
2.TestNG安装与设置
前提需要安装JDK,然后在官网下载相应的jar包,目前版本6.9.12,也可以直接使用集成TestNG的IDE Intellij DEA。
本次使用git直接下载并安装,命令行如下:
git clone git://github.com/cbeust/testng.git
cd testng
./build-with-gradle
ps:并没有成功,没有找到testng文件下面的target文件,没有生成jar文件,所以直接用IDE来学习。
3.TestNG的使用
TestNG的使用有几种方法:
直接使用命令行运行
ant运行
Eclipse插件
Intellij’s IDEA
4.TestNG的简单语法
安装好之后可以,可以用一个简单的例子测试。
测试前需要了解TestNG的一些基本语法规则:
suite代表一个xml文件,它由<suite>标签定义,可以包含一个或多个tests。
test可以包含一个或多个TestNG类,由<test>标签定义
TestNG类是一个Java类,包含至少一条TestNG注释,可以有一个或多个测试方法。在xml中它由<class>标签定义
测试方法是Java中的方法,由@Test在TestNG中注释标记。
以下是一个简单例子,利用xml启动TestNG。TestNGSimpleTest是一个TestNG类,它包含一个@Test。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Suite1">
<test name="test1">
<classes>
<class name="TestNGSimpleTest"/>
</classes>
</test>
</suite>
import org.testng.annotations.Test;
import static org.testng.Assert.assertEquals;public class TestNGSimpleTest {
@Test
public void testAdd() {
String str = "TestNG is working fine";
assertEquals("TestNG is working fine", str);
}
}