您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > TestNG
使用TestNG的新特性管理實際項目中的大量單元測試
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時間:[ 2013/3/15 13:59:56 ] 推薦標簽:

圖 3. 生成的測試報告

該目錄中有一個 testng-failed.xml 文件,該文件可以被用來運行前一次運行失敗的所有測試用例。下文將會詳細介紹使用該文件的步驟。

重新運行前次運行失敗的測試用例

隨著項目開發(fā)的進行,單元測試的數(shù)量也會成倍的增加。有時僅僅有數(shù)量很小的某幾個測試用例會運行失敗。在這種情況之下,對于每一次修改,可能并不需要跑完所有的測試用例。只需要重新運行前次運行失敗的測試用例。TestNG 內(nèi)建了重新運行上次失敗測試用例的功能,下文將會給出重新運行前次錯誤測試用例的步驟。

運行一組測試用例,如果這一組測試用例中有失敗的用例,TestNG 會在輸出目錄中創(chuàng)建一個叫做 testng-failed.xml 的配置文件。這個文件記錄了本組測試用例中運行失敗的測試用例。使用該文件,用戶可以快速的重新運行上次運行失敗的測試用例。而無需運行整個測試用例組。如前文所述,運行完 Ant 腳本之后,會在腳本運行的目錄之中生成一個 test-output 目錄。該目錄中,包含 testng-failed.xml 文件。可以用如下的命令運行被標記為運行失敗的測試用例。

列表 3. 重新運行前次運行失敗的測試用例

    
C:>java -classpath
c:/spark/eclipse/plugins/org.testng.eclipse_4.7.0.0/lib/testng-jdk15.jar
org.testng.TestNG -d test-outputs test-output estng-failures.xml


運行結(jié)果如下:

圖 4. 重新運行前次運行失敗的測試用例的輸出結(jié)果

分布式測試特性

隨著測試用例規(guī)模的擴大,分組數(shù)量的增加。使用一臺主機來運行所有的測試用例需要消耗大量的時間。為了解決這個問題,TestNG 提供了分布式特性。本文將介紹使用 TestNG 分布特征——使用多臺主機同時運行測試用例。TestNG 提供的分布式模型如下所示:

圖 5. TestNG 提供的分布式模型

這是一個典型的 master/slave。在這個模型中,有一個負責調(diào)度的 master 節(jié)點,和一些負責執(zhí)行任務(wù)的 slave 節(jié)點。下文將介紹如何配置這樣一個分布式模型。

首先,在遠程機器上部署 slave 節(jié)點。如上圖所示,在遠程節(jié)點上不僅要配置 TestNG 運行環(huán)境,還需要復制測試用例文件。

圖 6. 將需要運行的測試用例部署到遠程機器上

然后在這臺遠程機器上以 “slave” 模式啟動一個 TestNG 實例,使用如下命令:java – classpath <testng_path>;<testcase_path> org.testng.TestNG -slave <port>

圖 7. 以“slave”模式啟動一個 TestNG 實例

這樣,一個 TestNG 實例將會被啟動,并且等待即將到來的連接請求。如果有需要,可以在多臺機器上以 slave 模式啟動 TestNG 實例。

完成了所有 slave 實例的啟動之后,將所有啟動 slave 實例的主機信息記錄在一個配置文件中,如圖 8 所示:

圖 8. 分布式運行的配置文件

然后使用該配置文件啟動 TestNG 的 master 實例。

上一頁123下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd