• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

        JUnit實施--3,4,5

        JUnit實施--3,4,5

        更新時間:2022-05-10 文章作者:未知 信息來源:網絡 閱讀次數:

        3.Design by Contract(這句話我沒法翻譯)

        Design by Contract本是Bertrand Meyer(Eiffel語言的創始人)開發的一種設計技術。我發現在JUnit中使用Design by Contract會帶來意想不到的效果。Design by Contract的核心是斷言(assersion)。斷言是一個布爾語句,該語句不能為假,如果為假,則表明出現了一個bug。Design by Contract使用三種斷言:前置條件(pre-conditions)、后置條件(post-conditions)和不變式(invariants)這里不打算詳細討論Design by Contract的細節,而是希望其在測試中能發揮其作用。

        前置條件在執行測試之前可以用于判斷是否允許進入測試,即進入測試的條件。如 expectedWheels > 0, myCar != null。后置條件用于在測試執行后判斷測試的結果是否正確。如 expectedWheels==myCar.getWheels()。而不變式在判斷交易(Transaction)的一致性(consistency)方面尤為有用。我希望JUnit可以將Design by Contract作為未來版本的一個增強。


        4.Refactoring(這句話我依然沒法翻譯)

        Refactoring本來與測試沒有直接的聯系,而是與軟件熵有關,但既然我們說測試能解決軟件熵問題,我們也就必須說出解決之道。(僅僅進行測試只能發現軟件熵,Refactoring則可解決軟件熵帶來的問題。)軟件熵引出了一個問題:是否需要重新設計整個軟件的結構?理論上應該如此,但現實不允許我們這么做。這或者是由于時間的原因,或者是由于費用的原因。重新設計整個軟件的結構會給我們帶來短期的痛苦。而不停地給軟件打補丁甚至是補丁的補丁則會給我們帶來長期的痛苦。(不管怎樣,我們總處于水深火熱之中)

        Refactoring是一個術語,用于描述一種技術,利用這種技術我們可以免于重構整個軟件所帶來的短期痛苦。當你refactor時,你并不改變程序的功能,而是改變程序內部的結構,使其更易理解和使用。如:該變一個方法的名字,將一個成員變量從一個類移到另一個類,將兩個類似方法抽象到父類中。所作的每一個步都很小,然而1-2個小時的Refactoring工作可以使你的程序結構更適合目前的情況。Refactoring有一些規則:

        1> 不要在加入新功能的同時refactor已有的代碼。在這兩者間要有一個清晰的界限。如每天早上1-2個小時的Refactoring,其余時間添加新的功能。

        2> 在你開始Refactoring前,和Refactoring后都要保證測試能順利通過。否則Refactoring沒有任何意義。

        3> 進行小的Refactoring,大的就不是Refactoring了。如果你打算重構整個軟件,就沒有必要Refactoring了。

        只有在添加新功能和調試bug時才又必要Refactoring。不要等到交付軟件的最后關頭才Refactoring。那樣和打補丁的區別不大。Refactoring 用在回歸測試中也能顯示其威力。要明白,我不反對打補丁,但要記住打補丁是應該最后使用的必殺絕招。(打補丁也需要很高的技術,詳情參看微軟網站)

        5.IDE對JUnit的支持


        目前支持JUnit的Java IDE 包括


      2. IDE
      3. 溫馨提示:喜歡本站的話,請收藏一下本站!

        本類教程下載

        系統下載排行

        主站蜘蛛池模板: 特级毛片A级毛片100免费播放 | 日韩免费高清大片在线| 亚洲精品A在线观看| 日韩a毛片免费观看| 免费观看国产精品| 免费一级毛suv好看的国产网站| 国产精品无码一二区免费| 妇女自拍偷自拍亚洲精品| 四虎国产精品免费久久影院| 成人一级免费视频| 亚洲熟伦熟女新五十路熟妇 | 免费高清A级毛片在线播放| 免费在线观看的黄色网址| 一级毛片在线免费播放| 亚洲熟妇无码乱子AV电影| 香港a毛片免费观看| 亚洲成年人免费网站| 女人18一级毛片免费观看| 狠狠入ady亚洲精品| 久久影视综合亚洲| 久久99精品视免费看| 亚洲人成网男女大片在线播放 | 亚洲精品中文字幕乱码三区| 国产高清不卡免费视频| 亚洲中文字幕久久精品无码2021| 成人网站免费观看| 一本久久免费视频| 亚洲综合精品香蕉久久网97| 成人最新午夜免费视频| 九九久久国产精品免费热6 | 亚洲精品免费在线观看| 中文日韩亚洲欧美制服| 亚洲AⅤ无码一区二区三区在线| aaa毛片视频免费观看| 亚洲国产成AV人天堂无码| 免费日本黄色网址| 免费无码VA一区二区三区| 亚洲狠狠婷婷综合久久| 亚洲国产精品无码专区影院 | 免费无码婬片aaa直播表情| 99久久亚洲综合精品成人网|