TestNG跑个Demo并打个Jar包

Posted df888

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TestNG跑个Demo并打个Jar包相关的知识,希望对你有一定的参考价值。

新建Maven项目的步骤,省略。

浏览器访问https://mvnrepository.com/search?q=testng获取maven,选择相应版本,拿到依赖:

技术图片

技术图片

技术图片

添加到pom.xml中:
pom.xml

    <dependencies>

        <!-- https://mvnrepository.com/artifact/org.testng/testng -->
        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>6.14.3</version>
            <scope>test</scope>
        </dependency>

    </dependencies>

技术图片

新建class,写上代码:
src/main/java

/**
 * @author Dongfanger
 * @version 0.0.1 2020/3/17
 */

import org.testng.annotations.Test;

public class TestNGNotOk {
    public static void main(String[] args) {
    }

    @Test
    public void ohNo() {

    }
}

技术图片

问题1:

技术图片

文档注释不能放行首,把import放到顶部,解决。

问题2:

技术图片

pom.xml中,<scope>test</scope>,表示依赖范围是test:

技术图片

把类建到src/test/java就可以了。当然也可以更改<scope>,如compile(默认)。
src/test/java

import org.testng.annotations.Test;

/**
 * @author Dongfanger
 * @version 0.0.1 2020/3/17
 */

public class TestNGTest {
    @Test
    public void helloTest() {
        System.out.println("Hello");
    }
}

为了打Jar包,修改src/main/java/TestNGNotOk.java内容:

import org.testng.TestNG;
import org.testng.annotations.Test;

/**
 * @author Dongfanger
 * @version 0.0.1 2020/3/17
 */


public class TestNGNotOk {
    public static void main(String[] args) {
        TestNG testng = new TestNG();
        testng.setTestClasses(new Class[]{TestNGNotOk.class});
        testng.run();
    }

    @Test
    public void helloJar() {
        System.out.println("Jar");
    }
}

同时去掉pom.xml中的<scope>

    <dependencies>

        <!-- https://mvnrepository.com/artifact/org.testng/testng -->
        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>6.14.3</version>
        </dependency>

    </dependencies>

打开File>Project Structure>Artifacts>"+"

技术图片

选择Main Class,一定要修改META-INF/MANIFEST.MF存放路径为resources,否则执行java -jar会报错jar中没有主清单属性

技术图片

一路点OK直到窗口关闭。

Build生成Jar包:

技术图片

技术图片

打开命令行,执行Jar包:

$ java -jar testng-dongfanger.jar 
Jar

===============================================
Command line suite
Total tests run: 1, Failures: 0, Skips: 0
===============================================

以上介绍了跑Demo打Jar包。

TestNG使用比较多的还是testng.xml,在根目录下建个testng.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="All Test Suite">
    <test name="Hello test">
        <classes>
            <class name="TestNGTest"/>
        </classes>
    </test>
</suite>

右键就可以运行了:

技术图片

以上是关于TestNG跑个Demo并打个Jar包的主要内容,如果未能解决你的问题,请参考以下文章

spring + maven +testng 测试常见依赖包问题

如何用dos命令运行testng

TestNG独立运行的几种方法.md

TestNG测试框架入门到实战

无法使用Java TestNG项目解决AWS设备场中的依赖项 - jar错误

MyEclipse中安装Testng插件