Self20171218_Eclipse+TestNg HelloWorld

作为一个经典的入门例子,这里展示如何开始使用TestNG单元测试框架。

使用的工具 :

  • TestNG 6.8.7
  • Maven 3
  • Eclipse IDE

TestNG下载并安装

从这里 http://testng.org/doc/download.html 下载当前版本的TestNG,打开zip分发来获取TestNG解压缩文件,其中包含以下子文件:

  • Testng-6.jar(请直接添加到您的项目中,也可能无法仅使用此jar来成功构建代码,因为TestNG官方版本不包括所有外部jar文件,以减少包的大小)
  • 文档(TestNG教程资料)
  • 示例代码
  • Testng 源代码
  • Readme文档

对于初学者,强烈建议您从示例代码和文档开始和编写TestNG。

如果您使用Eclipse IDE,建议按照以下方法插件,建议使用更新站点:

对于Eclipse 3.4及更高版本,请输入 http://beust.com/eclipse
对于Eclipse 3.3及更低版本,请输入 http://beust.com/eclipse1

在Eclipse插件中安装如下 -

Self20171218_Eclipse+TestNg HelloWorld

实例

打开 Eclipse创建一个 Maven 项目,其项目结构如下所示 -

Self20171218_Eclipse+TestNg HelloWorld

1. TestNG依赖关系

pom.xml中添加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.yiibai</groupId>
<artifactId>TestHelloWorld</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging> <name>TestHelloWorld</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.8.7</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
XML

2. TestNG示例

com.yiibai包上创建一个 TestNg 类,如下图所示 -

Self20171218_Eclipse+TestNg HelloWorld

选择 TestNG class如下图所示 -

Self20171218_Eclipse+TestNg HelloWorld

写入类的名称:TestHelloWorld,如下所示 -

Self20171218_Eclipse+TestNg HelloWorld

文件:TestHelloWorld.java 代码如下 -

package com.yiibai;

import org.testng.Assert;
import org.testng.annotations.Test; public class TestHelloWorld { @Test()
public void testEmailGenerator() { RandomEmailGenerator obj = new RandomEmailGenerator();
String email = obj.generate(); Assert.assertNotNull(email);
Assert.assertEquals(email, "feedback@yiibai.com"); } }
Java

再创建一个简单的Java类,它在方法中返回一个固定电子邮件: “feedback@yiibai.com”.
文件:RandomEmailGenerator.java 代码如下 -

package com.yiibai;

//import org.springframework.stereotype.Service;

public class RandomEmailGenerator {

    public String generate() {
return "feedback@yiibai.com";
} }
Java

完成后,创建一个简单的TestNG测试用例,此测试确保RandomEmailGenerator.generate()始终返回“feedback@yiibai.com”。

3. TestNG Eclipse插件

要在Eclipse IDE中运行以上测试,您需要安装TestNG Eclipse插件。 按照官方的TestNG Eclipse插件指南进行安装。

要运行TestNG测试,请右键单击测试类(TestHelloWorld.java)并运行“TestNG Test”。

Self20171218_Eclipse+TestNg HelloWorld

输出结果如下 -

[TestNG] Running:
C:\Users\Administrator\AppData\Local\Temp\testng-eclipse-1570064410\testng-customsuite.xml PASSED: testEmailGenerator ===============================================
Default test
Tests run: 1, Failures: 0, Skips: 0
=============================================== ===============================================
Default suite
Total tests run: 1, Failures: 0, Skips: 0
=============================================== [TestNG] Time taken by org.testng.reporters.XMLReporter@1b40d5f0: 13 ms
[TestNG] Time taken by org.testng.reporters.SuiteHTMLReporter@6ea6d14e: 99 ms
[TestNG] Time taken by org.testng.reporters.EmailableReporter2@4563e9ab: 6 ms
[TestNG] Time taken by [FailedReporter passed=0 failed=0 skipped=0]: 0 ms
[TestNG] Time taken by org.testng.reporters.jq.Main@2aaf7cc2: 55 ms
[TestNG] Time taken by org.testng.reporters.JUnitReportReporter@45c8e616: 4 ms
上一篇:leetcode 回文数


下一篇:Java SE学习笔记 --->高级类特性 ---> toString() 方法