Java单元测试框架-1-TestNg初识

    科技2025-12-24  18

    目录

    1.1xUnit整体作用

    1.2着重介绍Junit&TestNg

    1.3TestNg测试框架介绍

    1.4Eclipse安装TestNG

    1.5TestNg测试


    1.1xUnit整体作用

    xUnit是各种代码驱动测试框架的统称,这些框架可以测试软件的不同内容。

    主要优点是提供了一个自动化测试的解决方案,不需要多次编写重复的测试代码,也不必记录测试结果 xUnit用于测试的四要素:

    1:测试目标(对象)2:测试集3:测试执行(过程)4:断言

     

    1.3TestNg测试框架介绍

    TestNG是java中的一个单元测试框架,类似Junit,是一种注解式的编程方式,支持并行运行,数据驱动等,即可以用来做单元测试,也可以用来做集成测试。

    TestNg官网文档:TestNg官网   TestNg官网文档:https://testng.org/doc/documentation-main.html

    1.4Eclipse安装TestNG

    这里我的Eclispe是4.9.0版本,可以直接从Eclipse Marketplace处下载

    点击Help->Eclipse Marketplace 搜索TestNg

    我这里已经安装了,如果没安装可以根据提示进行安装,我是直接将TestNg拖动进来就可以安装了。

    安装成功后重启Eclispe,可以在Windows->Preferences->TestNg看到,此时就可以创建TestNgClass

    1.5TestNg测试

    创建一个最基本的TestNG 测试Class 

    TestFirst.java

    import org.testng.annotations.Test; import org.testng.annotations.BeforeMethod; import org.testng.annotations.AfterMethod; import org.testng.annotations.BeforeClass; import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeTest; import org.testng.annotations.AfterTest; import org.testng.annotations.BeforeSuite; import org.testng.annotations.AfterSuite; public class TestFirst { @Test public void Test() { } @BeforeMethod public void beforeMethod() { System.out.println("----beforeMethod----"); } @AfterMethod public void afterMethod() { System.out.println("----afterMethod----"); } @BeforeClass public void beforeClass() { System.out.println("----beforeClass----"); } @AfterClass public void afterClass() { System.out.println("----afterClass----"); } @BeforeTest public void beforeTest() { System.out.println("----beforeTest----"); } @AfterTest public void afterTest() { System.out.println("----afterTest----"); } @BeforeSuite public void beforeSuite() { System.out.println("----beforeSuite----"); } @AfterSuite public void afterSuite() { System.out.println("----afterSuite----"); } }

    注意查看执行顺序

    beforeSuite->beforeTest->beforeClass->beforeMethod->afterMetod->afterClass->afterTest->afterSuite

    从上面的运行结果可以看出,TestNg的测试用例组织结构如下:

    一个TestSuite由多个Test组成

    一个Test由多个Class组成

    一个Class由多个Method组成

    当运行不同层级的测试用例时,可以通过不同的注解实现测试前的初始化工作,测试用例的执行和测试执行后的环境清理工作。测试运行前,要打开文件,启动数据库,读取参数配置,测试结束后关闭文件,关闭数据库,清理运行环境等。

     

    Processed: 0.018, SQL: 9