TestNG 1 介紹

轉載至 : http://www.yiibai.com/testng/


 測試是檢查應用程序的功能的過程是否按要求工作,以確保在開發層面,單元測試成圖片。單元測試是單一實體(類或方法)的測試。單元測試是非常必要的,每一個軟件公司向他們的客戶提供高質量的產品。

JUnit 帶動開發人員瞭解測試的實用性,尤其是單元測試的時候比任何其他測試框架。憑藉一個相當簡單,務實,嚴謹的架構,JUnit已經能夠“感染”了一大批開發人員。 JUnit的特點,可以看看Junit 特點。

其中JUnit缺點:

  • 最初的設計,使用於單元測試,現在只用於各種測試

  • 不能依賴測試

  • 配置控制欠佳(安裝/拆卸)

  • 侵入性(強制擴展類,並以某種方式命名方法)

  • 靜態編程模型(不必要的重新編譯)

  • 不同的適合管理複雜項目中的測試可以是非常棘手.

TestNG是什麼?

TestNG按照其文檔的定義是:

TestNG是一個測試框架,其靈感來自JUnit和NUnit的,但引入了一些新的功能,使其功能更強大,使用更方便。

TestNG是一個開源自動化測試框架;TestNG表示下一代。 TestNG是類似於JUnit(特別是JUnit 4),但它不是一個JUnit擴展。它的靈感來源於JUnit。它的目的是優於JUnit的,尤其是當測試集成的類。 TestNG的創造者是Cedric Beust(塞德里克·博伊斯特)

TestNG消除了大部分的舊框架的限制,使開發人員能夠編寫更加靈活和強大的測試。 因爲它在很大程度上借鑑了Java註解(JDK5.0引入的)來定義的測試,它也可以告訴你如何使用這個新功能在真實的Java語言生產環境中。

TestNG的特點

  • 註解

  • TestNG使用Java和麪向對象的功能

  • 支持綜合類測試(例如,默認情況下,沒有必要創建一個新的測試每個測試方法的類的實例)

  • 獨立的編譯時間測試代碼運行時配置/數據信息

  • 靈活的運行時配置

  • 主要介紹“測試組”。當編譯測試,只要問TestNG運行所有的“前端”的測試,或“快”,“慢”,“數據庫”等

  • 支持依賴測試方法,並行測試,負載測試,局部故障

  • 靈活的插件API

  • 支持多線程測試


TestNG是一個Java的框架,所以第一個要求是JDK要安裝在你的機器上。

系統要求

JDK 1.5或以上
內存 沒有最低要求
磁盤空間 沒有最低要求
操作系統 沒有最低要求

步驟1 -驗證Java安裝在你的機器上

現在,打開控制檯並執行以下的java命令。

OS 任務 命令
Windows 打開命令控制檯 c:\> java -version
Linux 打開命令終端 $ java -version
Mac 打開命令終端 machine:~ joseph$ java -version

讓我們來驗證所有的操作系統的輸出:

OS 輸出
Windows java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
Linux java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
Mac java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)

如果你沒有安裝Java,安裝Java軟件開發工具包(SDK)點擊: http://www.oracle.com/technetwork/java/javase/downloads/index.html. 我們假設本教程中安裝和使用Java1.7.0_25版本。

第二步:設置JAVA環境

設置JAVA_HOME環境變量指向的基本目錄的位置,在你的機器上安裝Java。例如:

OS 輸出
Windows 設置環境變量 JAVA_HOME 爲 C:\Program Files\Java\jdk1.7.0_25
Linux export JAVA_HOME=/usr/local/java-current
Mac export JAVA_HOME=/Library/Java/Home

添加Java編譯器的位置,系統路徑。

OS 輸出
Windows Append the string; C:\Program Files\Java\jdk1.7.0_25\bin to the end of the system variable, Path.
Linux export PATH=$PATH:$JAVA_HOME/bin/
Mac not required

驗證Java安裝使用命令java-version如上所述。

第3步:下載TestNG的歸檔文件

下載最新版本的TestNG的jar文件,詳細請點擊訪問 http://www.testng.org.。在寫這篇教程的時候,我下載TestNG中-6.8.jar,並將 testng-6.8.jar 其複製到 C:\>TestNG 目錄。

OS 壓縮文件名
Windows testng-6.8.jar
Linux testng-6.8.jar
Mac testng-6.8.jar

步驟4:設置TestNG的環境

設置TESTNG_HOME環境變量指向TestNG的jar 存放在您的機器上的基本目錄位置。假設,我們已經儲存了testng-6.8.jar, TestNG各種操作系統上的文件夾如下:

OS 輸出
Windows Set the environment variable TESTNG_HOME to C:\TESTNG
Linux export TESTNG_HOME=/usr/local/TESTNG
Mac export TESTNG_HOME=/Library/TESTNG

 

第5步:設置CLASSPATH變量

設置CLASSPATH環境變量指向TestNG的jar文件位置。假設,我們已經儲存了testng-6.8.jar, TestNG在各種操作系統上的文件夾如下:

OS 輸出
Windows 設置環境變量 CLASSPATH 爲 %CLASSPATH%;%TESTNG_HOME%\testng-6.8.jar;
Linux export CLASSPATH=$CLASSPATH:$TESTNG_HOME/testng-6.8.jar:
Mac export CLASSPATH=$CLASSPATH:$TESTNG_HOME/testng-6.8.jar:

步驟6:測試TestNG的設置

創建一個Java類文件名TestNGSimpleTest  C:\ > TestNG_WORKSPACE

   
import org.testng.annotations.Test;
import static org.testng.Assert.assertEquals;

public class TestNGSimpleTest {
	@Test
	public void testAdd() {
		String str = "TestNG is working fine";
		assertEquals("TestNG is working fine", str);
	}
}

TestNG的幾種不同的方法可以被調用:

  •  testng.xml 文件

  • ant

  • 命令行

讓我們調用使用testng.xml文件。創建一個XML文件名稱testng.xml C:\ > TestNG_WORKSPACE 執行測試用例(s)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Suite1">
  <test name="test1">
    <classes>
       <class name="TestNGSimpleTest"/>
    </classes>
  </test>
</suite>	

第7步:檢查結果

類編譯使用javac編譯如下:

C:\TestNG_WORKSPACE>javac TestNGSimpleTest.java

現在,調用testng.xml看到的結果:

C:\TestNG_WORKSPACE>java -cp "C:\TestNG_WORKSPACE" org.testng.TestNG testng.xml

驗證輸出

===============================================
Suite1
Total tests run: 1, Failures: 0, Skips: 0
===============================================

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章