一、环境搭建的前提:
1.安装JDK
2.安装IntelliJ IDEA
3.IntelliJ IDEA 配置Maven
IntelliJ IDEA 配置Maven可参考如下博客:
二、创建Maven项目
(1)File-->new Project 选择Maven-->Next进入New Project窗口,如下图
在New Project窗口中,填写GroupId和ArtifactId后,点击Next。

(2)打开新创建的项目,在pom.xml中导入相关依赖和插件
<dependencies>
<!--导入TestNG依赖包-->
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.8.21</version>
</dependency>
<!-- 导入Mysql数据库链接jar包 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.30</version>
</dependency>
</dependencies>
<build>
<plugins>
<!-- 指定maven编译的jdk版本,如果不指定,maven3默认用jdk 1.5 maven2默认用jdk1.3 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<!-- 一般而言,target与source是保持一致的,
但是,有时候为了让程序能在其他版本的jdk中运行(对于低版本目标jdk,源代码中不能使用低版本jdk中不支持的语法),
会存在target不同于source的情况 -->
<source>1.8</source><!-- 源代码使用的JDK版本 -->
<target>1.8</target><!-- 需要生成的目标class文件的编译版本 -->
<encoding>UTF-8</encoding><!-- 字符集编码 -->
</configuration>
</plugin>
<!---->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.15</version>
<configuration>
<!--<testFailureIgnore>true</testFailureIgnore>-->
<forkMode>never</forkMode>
<argLine>-Dfile.encoding=UTF-8</argLine>
<suiteXmlFiles>
<!--testng.xml文件位置-->
<suiteXmlFile>src/res/testNG.xml</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</plugin>
</plugins>
</build>
插件:
maven-compiler-plugin使用
maven-compiler-plugin插件可以指定项目源码的jdk版本,编译后的jdk版本,以及编码
插件:maven-surefire-plugin
是maven里执行测试用例的插件。如终端里直接运行
mvn test,它会执行全部的测试用例。
三、编写待测类和测试类
这里有一个待测类Calculate,里面有加减乘除的方法,通过测试类来测试方法的正确性。
待测类:Calculate
public class Calculate {
public int add(int a, int b) {
return a + b;
}
public int subtract(int a, int b) {
return a - b;
}
public int multiply(int a, int b) {
return a * b;
}
public int divide(int a, int b) {
return a / b;
}
}
测试类:CalculateTest
import org.testng.Assert;
import org.testng.annotations.Test;
public class CalculateTest {
@Test(enabled = true)//false 忽略测试此测试用例
public void testAdd() {
/**
* assertEquals这个方法是一个断言方法
* 第一个参数表示程序的执行结果
* 第二个参数表示预期的结果
* 当预期结果与执行结果是一致的时候,则表示单元测试成功
*/
Assert.assertEquals( new Calculate().add(1, 3),4);
System.out.println("testAdd()");
}
@Test
public void testSubtract() {
Assert.assertEquals(new Calculate().subtract(9, 5),4 );
System.out.println("testSubtract()");
}
@Test
public void testMultiply() {
System.out.println("testMultiply()");
Assert.assertEquals(new Calculate().multiply(2, 3),6 );
}
/**
* 预期异常测试
*/
@Test(expectedExceptions =ArithmeticException.class)
public void testDivide() {
Assert.assertEquals( new Calculate().divide(9, 0),3);
System.out.println("testDivide()");
}
}
四、编写testNG.xml
xml文件可用于按照需要批量执行用例
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Suite_TestAll" parallel="true" thread-count="2" >
<test name="testCase1">
<classes>
<class name="com.xnn.calculate.CalculateTest"/>
</test>
</suite>
五、执行测试
(1)执行测试类中的单个测试方法
在IDEA中,打开测试类CalculateTest,点击方法左侧的运行图标。或者在方法内,右键选择测试方法运行。


(2)根据testNG.xml执行测试用例
a.选择Edit Configuration...

b.在Run/Debug Configurations窗口中,点击“+”按钮,选择“TestNG”

c.配置TestNG

d.配置完成后,点击运行

e.用例执行结果

最后附上一张项目目录结构:

Github: https://github.com/X-NaN/TestNgProj/blob/master/src/test/java/com/xnn/calculate/CalculateTest.java
本文介绍了如何在IntelliJ IDEA中搭建TestNG和Maven环境,创建Maven项目,配置相关依赖和插件,编写测试类和待测类,以及如何执行单个测试方法和通过testNG.xml批量执行测试用例。提供了一个具体的项目目录结构,并给出了Calculate类和CalculateTest测试类的实例。

2086

被折叠的 条评论
为什么被折叠?



