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

您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > junit
JUnit源碼分析:Command模式和Composite模式
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時間:[ 2013/5/28 15:54:28 ] 推薦標(biāo)簽:

3.UML圖:

圖中單個對象是樹葉(Leaf),而組合結(jié)構(gòu)是Compoiste,它維護了一個Leaf的集合。而Component是一個抽象角色,給出了共有接口和默認行為,也是JUnit源碼中的Test接口。

4.效果:
1)定義了基本對象和組合對象的類層次結(jié)構(gòu),通過遞歸可以產(chǎn)生更復(fù)雜的組合對象
2)簡化了客戶代碼,客戶可以使用一致的方式對待單個對象和組合結(jié)構(gòu)
3)添加新的組件變的很容易。但這個會帶來一個問題,你無法限制組件中的組件,只能靠運行時的檢查來施加必要的約束條件

    具體到JUnit源碼,單個對象是TestCase,而復(fù)合結(jié)構(gòu)是TestSuite,Test是抽象角色只有一個run方法。TestSuite維護了一個TestCase對象的集合fTests:

<!---->     private Vector fTests= new Vector(10);
      /**
     * Adds a test to the suite.
     */
    public void addTest(Test test) {
        fTests.addElement(test);
    }
    /**
     * Runs the tests and collects their result in a TestResult.
     */
    public void run(TestResult result) {
        for (Enumeration e= tests(); e.hasMoreElements(); ) {
              if (result.shouldStop() )
                  break;
            Test test= (Test)e.nextElement();
            test.run(result);
        }
    }

當(dāng)執(zhí)行run方法時遍歷這個集合,調(diào)用里面每個TestCase對象的run()方法,從而執(zhí)行測試。我們使用的時候僅僅需要把TestCase添加到集合內(nèi),然后用一致的方式(run方法)調(diào)用他們進行測試。

考慮使用Composite模式之后帶來的好處:
1)JUnit可以統(tǒng)一地處理組合結(jié)構(gòu)TestSuite和單個對象TestCase,避免了條件判斷,并且可以遞歸產(chǎn)生更復(fù)雜的測試對象
2)很容易增加新的TestCase。

上一頁123下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 国产精品免费在线播放 | 欧美久久久久久久久 | 黄色在线网站视频 | 青草午夜精品视频在线观看 | 一级做a爰性色毛片免费 | 中文字幕在线视频不卡 | 免费一级视频在线播放 | 日本亚洲天堂网 | 男人的天堂黄色 | 激情综| 毛片手机在线看 | 中国一级毛片免费看视频 | 天天躁日日躁狠狠躁综合 | 天天爽夜夜爽人人爽 | 97理论三级九七午夜在线观看 | 男女一级做片a性视频 | a视频在线观看 | 黄色片一区| 男女www视频在线看网站 | 日韩aⅴ在线观看 | 成人欧美一区二区三区黑人 | 一级女性全黄生活片免费 | 成年人免费在线视频观看 | 尼龙丝袜社区aaaaa视频 | 天天摸天天操 | 一级免费黄色毛片 | 九九在线精品视频xxx | 一本大道香蕉最新在线视频 | 欧美中文字幕在线视频 | 嗯啊使劲用力在线观看视频 | 欧美精品三级在线 | 首页 国产 制服 丝袜 | 在线日韩国产 | 日韩视频 中文字幕 | 黄色免费在线观看网址 | 中国黄色网页 | 奇米影视亚洲色图 | 在线观看免费播放网址成人 | 日韩欧美一区二区三区不卡在线 | www.好吊色.com | 牛牛热在线视频 |