• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    利用 Eclipse 進行單元測試

    發布: 2008-6-15 15:00 | 作者: 不詳 | 來源: 測試時代編輯整理 | 查看: 133次 | 進入軟件測試論壇討論

    領測軟件測試網


    清單 5. 經過編輯的場景 2 的 ServiceClassTest 類
                    
    ...
    private ServiceClass serviceClass;
    	private Mock mockCollaborator;
    	private Collaborator collaborator;
    	
    	public void setUp(){
    		serviceClass = new ServiceClass();
    		mockCollaborator = mock(Collaborator.class, "mockCollaborator");
    	}
    	
    	public void testRunServiceAndReturnFalse(){
    		mockCollaborator.expects(once()).method("executeJob").will(returnValue("failure"));
    		collaborator = (Collaborator)mockCollaborator.proxy();
    		boolean result = serviceClass.runService(collaborator);
    		assertFalse(result);
    	}
    }
    

    這里有幾點需要注意。第一,runService() 方法簽名已經不同于以往。它現在不接受 ICollaborator 接口,而接受具體類實現(Collaborator 類)。就測試框架而言,此更改非常重大(注,雖然在本質上反對多態,但是我們將使用傳遞具體類的示例(僅供舉例之用)。在實際的面向對象的場景中絕對不能這樣做)。

    第二,模擬 Collaborator 類的方式已經更改。使用 jMock CGLIB 庫可以模擬具體類實現。提供給 jMock CGLIB 的 mock() 方法的附加 String 參數被用作創建的模擬對象的標識符。使用 jMock(當然,還有 RMock)時,在單一測試用例內每個模擬對象設置都要求有惟一標識符。這對于在公共的 setUp() 方法中或在實際測試方法內定義的模擬對象來說是正確的。

    第三,測試方法的原始期望并未更改。仍然要求有 false 證明才能使測試通過。這是十分重要的,因為通過展示使用的測試框架足夠靈活、可以適應各種輸入帶來的更改、同時仍然允許獲得不變的測試結果,使它們在無法調節輸入生成同樣的結果時展示了其實際限制。

    現在,重新運行作為 JUnit 測試的測試。測試將通過,如下所示:


    圖 4. 場景 2 測試通過
    場景 2 測試通過 

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>