当前位置: 首页 > 教程 > TestNG >

TestNG Hello World入门示例

精华
小牛编辑
107浏览
2023-03-14

作为一个经典的入门例子,这里展示如何开始使用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插件中安装如下 -

实例

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

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>

2. TestNG示例

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

选择 TestNG class如下图所示 -

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

文件: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类,它在方法中返回一个固定电子邮件: “feedback@yiibai.com”.
文件:RandomEmailGenerator.java 代码如下 -

package com.yiibai;

//import org.springframework.stereotype.Service;

public class RandomEmailGenerator {

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

}

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

3. TestNG Eclipse插件

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

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

输出结果如下 -

[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