您的位置:軟件測(cè)試 > 開(kāi)源軟件測(cè)試 > 開(kāi)源單元測(cè)試工具 >
利用Eclipse進(jìn)行單元測(cè)試
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/2/19 15:20:35 ] 推薦標(biāo)簽:

  您的傳統(tǒng)代碼是不是要求使用匹配的類(lèi)測(cè)試套件才能針對(duì)其源代碼庫(kù)運(yùn)行?針對(duì)此類(lèi)目的,jMock 堪稱(chēng)是一個(gè)的測(cè)試框架。但是,并不是所有情況都能夠適用,尤其是必須以 jMock 不期望的方式構(gòu)造對(duì)象時(shí)。為避免生成自定義模擬對(duì)象套件才能支持應(yīng)用程序中的單元測(cè)試的麻煩,可以調(diào)整 RMock,與 jMock 無(wú)縫地結(jié)合使用,從而解決這一問(wèn)題……

  模擬對(duì)象將模仿出于指導(dǎo)代碼執(zhí)行的惟一目的而編寫(xiě)的類(lèi)的行為,以便它在測(cè)試時(shí)符合代碼執(zhí)行要求。終,模擬對(duì)象數(shù)目可以隨著應(yīng)用程序類(lèi)數(shù)目的增長(zhǎng)而增長(zhǎng)。使用 jMock、RMock 甚至 EasyMock 等框架有助于消除對(duì)物理的獨(dú)立存在的模擬對(duì)象集的需求。

  EasyMock 框架的一個(gè)主要缺點(diǎn)是不能模擬具體類(lèi) —— 而只能模擬接口。在本文中,我將向您展示怎樣使用 jMock 框架來(lái)模擬具體類(lèi)和 接口,以及如何用 RMock 測(cè)試某些模糊的情況。

  在 Eclipse IDE 中配置 jMock 和 RMock

  首先啟動(dòng) Eclipse 集成開(kāi)發(fā)環(huán)境 (IDE)。接下來(lái),創(chuàng)建一個(gè)基本 Java™ 項(xiàng)目,稍后將把 JUnit、jMock 和 RMock Java Archive (JAR) 庫(kù)導(dǎo)入到該項(xiàng)目中。將 Java 項(xiàng)目命名為 TestingExample。在 Java Perspective 內(nèi),選擇 Project > Properties,然后單擊 Libraries 選項(xiàng)卡,如下所示:

圖 1. 在 Eclipse 中編輯 TestingExample 項(xiàng)目的屬性

  當(dāng) JAR 文件位于 Java 類(lèi)路徑(即,已在 Eclipse 內(nèi)配置的 Java 運(yùn)行時(shí)環(huán)境(Java Runtime Environment,JRE))中時(shí),請(qǐng)使用 Add JARs 按鈕。Add Variable 按鈕適用于文件系統(tǒng)(本地或遠(yuǎn)程)中的資源(包括 JAR)所駐留的具體目錄,并且通?梢砸么税粹o。在必須引用 Eclipse 中默認(rèn)的那些特定資源或?yàn)樘囟ǖ?Eclipse 工作區(qū)環(huán)境配置的那些特定資源時(shí),請(qǐng)使用 Add Library 按鈕。單擊 Add Class Folder,從已經(jīng)配置為項(xiàng)目一部分的一個(gè)現(xiàn)有項(xiàng)目文件夾中添加資源。

  對(duì)于本示例,請(qǐng)單擊 Add External JARs 并瀏覽到已下載的 jMock 和 RMock JAR。將其添加到項(xiàng)目中。當(dāng)顯示圖 2 中所示的屬性窗口時(shí),請(qǐng)單擊 OK。

圖 2. 已添加到 TestingExample 項(xiàng)目中的 jMock 和 RMock JAR

TestExample 源代碼

對(duì)于 TestExample 項(xiàng)目,您將使用來(lái)自四個(gè)類(lèi)的源代碼:

    ServiceClass.java
    Collaborator.java
    ICollaborator.java
    ServiceClassTest.java

待測(cè)試的類(lèi)將是 ServiceClass,該類(lèi)包含了一個(gè)方法:runService()。服務(wù)方法將獲取實(shí)現(xiàn)簡(jiǎn)單接口 ICollaborator 的 Collaborator 對(duì)象。具體的 Collaborator 類(lèi)中實(shí)現(xiàn)了一個(gè)方法:executeJob()。Collaborator 是必須正確模擬的類(lèi)。

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