亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測(cè)試 > 開(kāi)源軟件測(cè)試 > 開(kāi)源單元測(cè)試工具 > TestNG
TestNG使Java單元測(cè)試輕而易舉
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2012/12/24 15:31:58 ] 推薦標(biāo)簽:

要運(yùn)行測(cè)試,請(qǐng)用 javac 編譯類(lèi),然后用以下命令調(diào)用 TestNG :
java -ea -classpath .;testng.jar;commons-lang-2.0.jar com.beust.testng.TestNG testng.xml

在這里,選項(xiàng) -ea 告訴 JVM 處理斷言(在斷言失敗時(shí)拋出異常);運(yùn)行這個(gè)例子只需要 testng.jar 和 commons-lang-2.0.jar 這兩個(gè)庫(kù),而 com.beust.testng.TestNG 是 TestNG 的主類(lèi)。對(duì)于所有那些已經(jīng)非常高興地忘記了 java 和 javac 的神秘語(yǔ)法的開(kāi)發(fā)人員來(lái)說(shuō),還提供了一個(gè)有用的 Ant 任務(wù)。作為例子,清單 3 演示了本文發(fā)布的示例應(yīng)用程序的 Ant 構(gòu)建文件。請(qǐng)注意與類(lèi) com.beust.testng.TestNGAntTask 關(guān)聯(lián)的 testng 任務(wù)的定義,以及它在 test 目標(biāo)中相當(dāng)簡(jiǎn)單的用法。

清單 3. 帶有 TestNG 任務(wù)的 Ant 構(gòu)建文件
<project name="sample" default="test" basedir=".">

<!-- COMPILE TESTS-->
<path id="cpath">
<pathelement location="testng.jar"/>
<pathelement location="commons-lang-2.0.jar"/>
</path>
<target name="compile">
<echo message="compiling tests"/>
<mkdir dir="classes"/>
<javac debug="true"
source="1.5" classpathref="cpath"
srcdir="src" destdir="classes"/>
</target>

<!-- RUN TESTS-->
<taskdef name="testng"
classname="com.beust.testng.TestNGAntTask"
classpathref="cpath"/>
<path id="runpath">
<path refid="cpath"/>
<pathelement location="classes"/>
</path>
<target name="test" depends="compile">
<echo message="running tests"/>
<testng fork="yes" classpathref="runpath" outputDir="test-output">
<fileset dir="src" includes="testng.xml"/>
<jvmarg value="-ea" />
</testng>
</target>

</project>

如果一切正常,那么應(yīng)當(dāng)在控制臺(tái)中看到測(cè)試結(jié)果。而且,TestNG 還在當(dāng)前目錄下自動(dòng)創(chuàng)建了一個(gè)叫做 test-output 的文件夾,并在其中創(chuàng)建了一份非常好的 HTML 報(bào)告。

定義測(cè)試組
TestNG 另外一個(gè)有趣的特性是其定義測(cè)試組的能力。每個(gè)測(cè)試方法都可以與一個(gè)或多個(gè)組相關(guān)聯(lián),但可以選擇只運(yùn)行某個(gè)測(cè)試組。要把測(cè)試加入測(cè)試組,只要把組指定為 @Test 標(biāo)注的參數(shù),使用的語(yǔ)法如下:

@Test(groups = {"tests.string"})

在這個(gè)具體的例子中,您聲明:標(biāo)注的方法屬于 tests.string 組。因?yàn)閰?shù) groups 是一個(gè)數(shù)組,所以可以指定多個(gè)組,組名之間用逗號(hào)分隔。例如,在示例應(yīng)用程序中,您可以為 String、Number 以及 boolean 創(chuàng)建不同的測(cè)試,然后如清單 4 所示配置 TestNG, 有選擇地運(yùn)行它們.

清單 4. 帶有不同組的配置文件
<!DOCTYPE suite SYSTEM "http://beust.com/testng/testng-1.0.dtd" >
<suite name="My suite">
<test name="Simple example">
<groups>
<run>
<include name="tests.string" />
<include name="tests.math" />
<exclude name="tests.boolean"/>
</run>
</groups>
<classes>
.... list classes here....
</classes>
</test>
</suite>

顯然,當(dāng)運(yùn)行不同的測(cè)試組時(shí),HTML 報(bào)告能夠在單一列表中顯示所有測(cè)試,也可以在獨(dú)立的列表中顯示每個(gè)組的測(cè)試,從而能夠立即理解問(wèn)題的來(lái)源。

配置方法
使用 TestNG,不僅可以指定測(cè)試方法,還可以用專(zhuān)門(mén)的標(biāo)注 @Configuration 指定類(lèi)中的其他特定方法,這些方法叫做 配置方法。配置方法有四種類(lèi)型:

    beforeTestClass 方法在類(lèi)實(shí)例化之后,但是在測(cè)試方法運(yùn)行之前執(zhí)行。
    afterTestClass 方法在類(lèi)中的所有測(cè)試方法執(zhí)行之后執(zhí)行。
    beforeTestMethod 方法在類(lèi)中的任何測(cè)試方法執(zhí)行之前執(zhí)行。
    afterTestMethod 方法在類(lèi)中的每個(gè)測(cè)試方法執(zhí)行之后執(zhí)行。

測(cè)試類(lèi)的生命周期

清單 5 演示了配置方法的一些示例。請(qǐng)注意,如果您使用組,那么配置方法也必須屬于某個(gè)組。而且,配置方法的四種類(lèi)型彼此之間不是互斥的,所以可以把方法定義成同時(shí)屬于一種或多種配置方法類(lèi)型。(作為例子,請(qǐng)參閱清單 5 中的 aroundTestMethods() 方法)。

清單 5. 配置方法示例
@Configuration(beforeTestClass = true, groups = {"tests.workflow"})
public void setUp()
{
System.out.println("Initializing...");
}

@Configuration(afterTestMethod = true, beforeTestMethod = true, groups = {"tests.workflow"})
public void aroundTestMethods()
{

System.out.println("Around Test");
}

TestNG 中的配置方法是 JUnit 的 setUp() 和 tearDown() 方法的增強(qiáng)版;它們的主要目的是為測(cè)試創(chuàng)建正確的執(zhí)行上下文,并在測(cè)試用例執(zhí)行之后刷新數(shù)據(jù)。

上一頁(yè)123下一頁(yè)
軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠(chéng)聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 亚洲成人动漫在线观看 | 性福利影院 | 短视频91 | 高h喷水荡肉爽文各种场合 高h喷水荡肉爽文np欲 | 99九九99九九九视频精品 | 欧美极品video粗暴 | 国产综合色在线视频区 | 国产精品欧美一区二区 | 日亚毛片免费乱码不卡一区 | yin乱的日子小说 | 人人插人人舔 | 日韩图色 | 综合网伊人 | 免费成年人视频 | 一区二区精品视频 | 免费在线不卡视频 | 欧美天堂久久 | 国产成人免费午夜在线观看 | 天天摸夜夜添狠狠添2018 | a一级 | 亚洲精品在线免费观看视频 | 亚洲一区二区福利视频 | 久久中文字幕制服丝袜美腿 | 午夜香蕉网 | 国产成在线观看免费视频成本人 | 成 人国产在线观看高清不卡 | 网址你懂的在线观看 | 国产特黄一级毛片特黄 | 黄色成人一级片 | 欧美一级大片在线观看 | 成人综合网站 | 日皮在线观看 | 亚洲香蕉一区二区三区在线观看 | 九九自拍视频 | 黄色在线观看视频网站 | 成人免费一区二区三区在线观看 | 看毛片看毛片 | 7m视频在线观看高清国产7m | 久久精品成人欧美大片免费 | 欧美日本一二三区 | 日韩免费福利视频 |