zoukankan      html  css  js  c++  java
  • 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插件中安装如下 -

    实例

    打开 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>
    
    XML

    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

    再创建一个简单的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”。

    输出结果如下 -

    [TestNG] Running:
      C:UsersAdministratorAppDataLocalTemp	estng-eclipse-1570064410	estng-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
  • 相关阅读:
    POJ 2752 Seek the Name, Seek the Fame
    POJ 2406 Power Strings
    KMP 算法总结
    SGU 275 To xor or not to xor
    hihocoder 1196 高斯消元.二
    hihoCoder 1195 高斯消元.一
    UvaLive 5026 Building Roads
    HDU 2196 computer
    Notions of Flow Networks and Flows
    C/C++代码中的笔误
  • 原文地址:https://www.cnblogs.com/xinxin1994/p/8060405.html
Copyright © 2011-2022 走看看