青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

eXile 的專欄

單元測(cè)試[zt]


來源: WingFire On Toplanguange

1.單元測(cè)試庫(kù)要盡量少地增加開發(fā)人員的負(fù)擔(dān)。額外負(fù)擔(dān)必須盡可能直白,傻瓜化。
市面上的許多講到單元測(cè)試的書都是以XUnit為藍(lán)本的,這導(dǎo)致CppUnit的接受程度頗高。CppUnit中規(guī)中矩,四平八穩(wěn),但不夠犀利。個(gè)人認(rèn)為boost.test最簡(jiǎn)單,只要一個(gè)BOOST_AUTO_TEST_CASE就可以開始了。CppUnit則要復(fù)雜一點(diǎn),而這種復(fù)雜性是多余的,甚至是有害的。用CppUnit的時(shí)候,我看到有人為了共享測(cè)試代碼,隨便在test case里面加函數(shù),然后復(fù)用,結(jié)果導(dǎo)致case不獨(dú)立。boost.test傾向于不要建立.h文件,所以要復(fù)用不方便(或者,不習(xí)慣在Cpp中復(fù)用),反而不容易犯錯(cuò)誤。
2.實(shí)施單元測(cè)試,必須能夠讓程序員看得到好處并盡快受益。新項(xiàng)目必須盡早引入單元測(cè)試,要早在正式編碼之前。
想立刻讓UT變得完美是不可能的,行政命令也不會(huì)有好結(jié)果。在推行單元測(cè)試的時(shí)候,教育很重要。必須讓同事能理解單元測(cè)試為什么有效,如何工作,UT編寫準(zhǔn)則之類的問題。另外,在工作多年的程序員(對(duì)UT缺乏認(rèn)識(shí)的)中推行單元測(cè)試,阻力更大。更要注意教育和反饋。最好的反饋就是幫助他們從單元測(cè)試中獲益。例如,修改更輕松,思維更面向接口,bug更少,代碼更容易理解等等。作為推動(dòng)者,有義務(wù)去主動(dòng)發(fā)現(xiàn)這些改善之處并積極地反饋給程序員。從而增強(qiáng)應(yīng)用UT的信心和意愿。
3.必須充分自動(dòng)化。
UT的任務(wù)之一是給代碼編織一層細(xì)密的保護(hù)網(wǎng)。程序員應(yīng)該認(rèn)識(shí)到,單元測(cè)試是為自己服務(wù)的,所以,我們要的是完成任務(wù)而不是展示。能夠自動(dòng)地完成任務(wù)則是最好的。如果單元測(cè)試過多地干擾程序員的正常思考,就會(huì)招致更多的抵觸(抵觸總是存在的)或敷衍。敷衍是可怕的。我向來是把單元測(cè)試的運(yùn)行作為build的一個(gè)步驟的。成功的單元測(cè)試不需要輸出任何信息,最多在全部passs的時(shí)候給個(gè)OK就足夠了。圖形界面的測(cè)試工具在我看來也是雞肋,新手的玩具而已。圖形界面既不利于參數(shù)化運(yùn)行,也不方便自動(dòng)化,實(shí)在是降低開發(fā)效率的殺手。
4.不要追求完美的UT。
不是所有東西都很容易測(cè)試。UT要求被測(cè)試的東西可重現(xiàn),可觀測(cè)。 基本上,大部分的物理操作因?yàn)槿狈芍貜?fù)性或可觀察性,很難測(cè)試,例如database,GUI (注意,這不意味著在實(shí)現(xiàn)一個(gè)GUI庫(kù)或db driver時(shí)就不能做UT了)。勉強(qiáng)UT全覆蓋,既不現(xiàn)實(shí),也不實(shí)惠。并且,這很可能讓UT變得復(fù)雜,高成本,這是非常危險(xiǎn)的和不值得的。我的主張是,很難測(cè),那就不測(cè),但要正確應(yīng)對(duì)。我的做法是將難測(cè)的部分隔離到一些抽象層當(dāng)中去。然后為這些抽象層寫MockObject即可測(cè)試了。我曾經(jīng)應(yīng)用在數(shù)據(jù)庫(kù)應(yīng)用中,并很自然的得到一個(gè)良好的數(shù)據(jù)訪問的抽象層,單元測(cè)試就只測(cè)了這個(gè)抽象層。而實(shí)際的數(shù)據(jù)庫(kù)訪問中的物理操作部分,則從單元測(cè)試中剝離出去。如果堅(jiān)持分離物理操作和邏輯操作的話,這個(gè)剝離出去的部分一般很小很有限,也很容易測(cè)試。相反,如果不剝離,將導(dǎo)致單元測(cè)試的結(jié)果要依賴數(shù)據(jù)庫(kù)的狀態(tài)。這種額外的依賴性沒什么好處。這里的關(guān)鍵是,必須讓不可測(cè)的部分盡可能隔離,盡可能小,盡可能地將邏輯操作從物理操作中分離出來。被隔離部分所包含的邏輯操作仍然需要寫UT。

posted on 2008-04-29 13:39 eXile 閱讀(597) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 編程與設(shè)計(jì)

導(dǎo)航

<2008年5月>
27282930123
45678910
11121314151617
18192021222324
25262728293031
1234567

統(tǒng)計(jì)

常用鏈接

留言簿(18)

隨筆分類

隨筆檔案

服務(wù)器編程

搜索

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲精品久久| 国产亚洲精品激情久久| 亚洲欧美在线网| 蜜桃av一区二区三区| 亚洲免费小视频| 久久亚洲欧美| 久久久99免费视频| 国产精品夫妻自拍| 亚洲日本黄色| 亚洲国产高清一区二区三区| 亚洲视频免费在线| 宅男精品视频| 欧美精品亚洲精品| 欧美成人精精品一区二区频| 国模吧视频一区| 香蕉av福利精品导航| 亚洲欧美国产精品桃花| 欧美人与禽性xxxxx杂性| 欧美激情在线有限公司| 在线欧美福利| 久久字幕精品一区| 蜜臀av一级做a爰片久久| 国产啪精品视频| 亚洲天堂网在线观看| 一区二区三区四区五区在线| 欧美精品乱人伦久久久久久| 亚洲国产裸拍裸体视频在线观看乱了中文 | 午夜在线成人av| 欧美va天堂| 亚洲国产1区| 亚洲美女免费视频| 欧美区高清在线| 日韩一区二区久久| 亚洲综合导航| 国产乱子伦一区二区三区国色天香| 一本一本久久a久久精品综合麻豆| 在线一区二区三区四区五区| 欧美视频久久| 亚洲欧美日韩在线综合| 性欧美大战久久久久久久久| 国产欧美精品日韩| 久久久久久一区二区三区| 模特精品裸拍一区| 日韩视频一区二区三区| 欧美三级在线播放| 亚洲欧美日韩区| 免费观看一级特黄欧美大片| 亚洲激情在线观看视频免费| 欧美日韩黄视频| 亚洲影院色无极综合| 久久久xxx| 亚洲精品久久久久久一区二区| 欧美日韩1区2区| 性欧美大战久久久久久久久| 久久一区二区三区av| 亚洲精品美女| 欧美三日本三级少妇三99| 午夜亚洲一区| 亚洲人成艺术| 久久av一区二区三区亚洲| 黄色工厂这里只有精品| 欧美久久影院| 欧美一区二区免费视频| 欧美国产在线观看| 亚洲欧美日韩在线一区| 亚洲国产精品免费| 国产精品久久久久久久久久免费看 | 鲁大师成人一区二区三区| 亚洲日本va午夜在线影院| 欧美专区福利在线| 亚洲免费观看在线视频| 国产一区二区三区四区hd| 欧美高潮视频| 性做久久久久久久免费看| 免播放器亚洲一区| 久久精品国亚洲| 在线一区亚洲| 亚洲福利电影| 国产色综合网| 欧美偷拍一区二区| 久久久欧美精品sm网站| 亚洲一区激情| 亚洲日本精品国产第一区| 免费观看亚洲视频大全| 欧美中文字幕| 亚洲欧美日韩中文视频| 亚洲免费精品| 亚洲第一精品夜夜躁人人躁 | 久久久精品tv| 午夜一区二区三区在线观看| 日韩视频精品在线观看| 欧美大秀在线观看| 狂野欧美一区| 久久精品理论片| 欧美一区激情| 亚洲桃花岛网站| 亚洲区欧美区| 亚洲二区在线| 亚洲国产国产亚洲一二三| 欧美激情在线播放| 久久久欧美一区二区| 日韩亚洲一区二区| 久久综合色综合88| 久久久久99| 久久成人18免费网站| 亚洲欧美国产三级| 亚洲欧美日韩天堂| 亚洲字幕在线观看| 亚洲嫩草精品久久| 亚洲欧美日韩中文视频| 午夜欧美精品久久久久久久| 亚洲女优在线| 亚洲欧美日韩一区二区在线 | 亚洲伦理在线免费看| 欧美激情综合在线| 99视频国产精品免费观看| 一区二区三区日韩精品| 一区二区三区偷拍| 亚洲已满18点击进入久久| 亚洲图片在区色| 午夜亚洲性色福利视频| 欧美在线视频一区二区三区| 久久精品五月| 男女精品网站| 欧美日韩亚洲国产精品| 国产精品电影在线观看| 国产欧美一区二区精品忘忧草| 国产亚洲成av人片在线观看桃| 国自产拍偷拍福利精品免费一| 136国产福利精品导航| 亚洲国产成人精品女人久久久 | 最近中文字幕日韩精品| 亚洲巨乳在线| 亚洲在线不卡| 久久精品视频免费| 欧美不卡在线| 欧美日韩午夜精品| 国产一区二区三区奇米久涩| 亚洲二区在线观看| 亚洲伊人伊色伊影伊综合网| 欧美专区在线| 欧美高清在线视频| 亚洲免费观看在线观看| 校园春色综合网| 猫咪成人在线观看| 国产精品成人观看视频免费| 国产午夜精品理论片a级大结局| 激情av一区| 一区二区免费在线视频| 久久久噜噜噜久久中文字幕色伊伊 | 亚洲国产精品国自产拍av秋霞| 亚洲免费成人av| 欧美一级精品大片| 欧美高清不卡| 亚洲免费在线电影| 麻豆91精品| 国产精品久久久久影院色老大| 在线免费观看一区二区三区| 在线色欧美三级视频| 在线一区二区日韩| 久久成人人人人精品欧| 亚洲国产欧美一区| 欧美专区在线观看一区| 欧美国产日韩一区| 精品999久久久| 性伦欧美刺激片在线观看| 91久久精品美女高潮| 欧美亚洲一级| 国产精品高精视频免费| 亚洲精品乱码久久久久久按摩观| 久久狠狠一本精品综合网| 9久re热视频在线精品| 免费观看一区| 精品动漫3d一区二区三区免费| 午夜精品视频一区| 亚洲美女尤物影院| 欧美成人性网| 亚洲国产精品一区二区尤物区| 久久精品女人| 亚洲男人av电影| 国产精品yjizz| 中国成人在线视频| 亚洲人成在线影院| 欧美激情综合五月色丁香小说| 亚洲国产日韩欧美| 欧美成人精品在线观看| 久久久久久**毛片大全| 国产综合色一区二区三区 | 免费成人性网站| 久久激情视频久久| 国产乱码精品一区二区三区五月婷 | 国产一区二区黄| 欧美一区二区福利在线| 亚洲一区二区三区在线观看视频| 欧美高清在线视频观看不卡| 亚洲欧洲精品一区二区三区| 免播放器亚洲一区| 久久久一二三| 亚洲国产精品成人综合| 欧美黄色精品|