下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第第頁單元測(cè)試的小技巧介紹和舉例單元測(cè)試的小技巧介紹和舉例
發(fā)表于:2023-10-22來源::點(diǎn)擊數(shù):標(biāo)簽:?jiǎn)卧e例技巧
關(guān)鍵字:?jiǎn)卧獪y(cè)試單元測(cè)試的信任在這個(gè)部分,我將略述出一些最通用的信任,這些信任來自于在使用大量單元測(cè)試獲得的好處和解釋為什么這些信任通常不是必須真實(shí)的。然后我們會(huì)幫助您在您的工程中擁有這些信任。更加簡(jiǎn)單的跟蹤Bug?當(dāng)然這并不是必須的,
關(guān)鍵字:?jiǎn)卧獪y(cè)試單元測(cè)試的信任
在這個(gè)部分,我將略述出一些最通用的信任,這些信任來自于在使用大量單元測(cè)試獲得的好處和解釋為什么這些信任通常不是必須真實(shí)的。然后我們會(huì)幫助您在您的工程中擁有這些信任。
更加簡(jiǎn)單的跟蹤Bug?當(dāng)然這并不是必須的,那么您怎么知道您的測(cè)試是正確的?是否存在在一些測(cè)試環(huán)節(jié)測(cè)試失敗的情況?另外您又如何知道您的測(cè)試覆蓋了系統(tǒng)中多少的代碼量?是否測(cè)試到了程序中的錯(cuò)誤,錯(cuò)誤又在哪里等等的問題。
當(dāng)你在你的單元測(cè)試中發(fā)現(xiàn)了bug后又會(huì)發(fā)生什么事情哪?你會(huì)突然間得到很多與愿意錯(cuò)誤的反饋,bug被發(fā)現(xiàn),但是問題并不在你測(cè)試的代碼中。你的測(cè)試的邏輯存在一個(gè)bug,因此測(cè)試失敗了。這些bug也是您最難被檢查出來的,因?yàn)槟ǔ?huì)去檢查您的應(yīng)用程序而不會(huì)去檢測(cè)你的測(cè)試環(huán)節(jié)。在這部分中,我會(huì)展示給你如何確認(rèn)大量的單元測(cè)試,事實(shí)上就是使得跟蹤bug變得更加容易。
代碼更加便于維護(hù)從最終點(diǎn)考慮,你可以傾向于認(rèn)為這些信任并不是必須的,當(dāng)然你是對(duì)的,讓我們?nèi)フf,代碼中每個(gè)邏輯方法至少要有一個(gè)測(cè)試方法(當(dāng)然,你可能擁有一個(gè)以上的方法)在一個(gè)好的測(cè)試覆蓋的工程中,大概有百分之六十的代碼是能夠得到單元測(cè)試的,現(xiàn)在不得不考慮到測(cè)試也是要被維護(hù)的,如果針對(duì)一個(gè)復(fù)雜的邏輯方法你有20個(gè)測(cè)試,那么當(dāng)你向這個(gè)方法添加一個(gè)參數(shù)時(shí)會(huì)發(fā)生什么事情哪?測(cè)試無法編譯。當(dāng)你修改了類的結(jié)構(gòu)的時(shí)候同樣會(huì)發(fā)生這樣的事情。這時(shí)你突然發(fā)現(xiàn)為了能讓你的應(yīng)用程序繼續(xù)工作你自己需要改變大量的測(cè)試。當(dāng)然這會(huì)花費(fèi)你大量的時(shí)間。
為了使這個(gè)信任確認(rèn)下來,你需要確認(rèn)你的測(cè)試是便于維護(hù)的。保持DRY規(guī)則寫入:不要重復(fù)你自己。我們將更加接近的來看這個(gè)問題。
代碼更加容易被理解?單元測(cè)試的好處通常并非是人們最初所期待的,在一個(gè)工程中考慮修改一些你之前從沒有看過的代碼(比方說,一個(gè)特殊的類或者方法).你將如何動(dòng)手處理這些代碼?你可能需要在項(xiàng)目中去瀏覽這些特定的類或者方法使用的代碼,理所當(dāng)然,單元測(cè)試就是這樣例子的一個(gè)很好的場(chǎng)所。同時(shí),當(dāng)正確寫入的時(shí)候,單元測(cè)試可以為工程提供一個(gè)API文件的容易讀取的設(shè)置,使得文檔的處理和代碼的理解對(duì)于整個(gè)團(tuán)隊(duì)中的新老開發(fā)者一樣的簡(jiǎn)單,便捷。然而,這些只能在測(cè)試是易讀的和容易理解的情況下才能被確認(rèn),這個(gè)規(guī)則很多的單元測(cè)試開發(fā)者并不會(huì)遵循。我將詳述這個(gè)信任,然后在這篇文章的易讀測(cè)試的部分給你展現(xiàn)如何在去寫易讀的單元測(cè)試。
測(cè)試正確的事情
'returnsthesumofthetwonumbers
FunctionSum(ByValaAsInteger,ByValbAsInteger)AsInteger
你可以向如下的方式寫一個(gè)失敗測(cè)試:
_
PublicSubSum_AddsOneAndTwo()
DimresultAsInteger=Sum(1,2)
Assert.AreEqual(4,result,"badsum");
EndSub
初看上去這個(gè)處理像是一個(gè)寫失敗測(cè)試的好的方法,它完全錯(cuò)失了你寫錯(cuò)誤測(cè)試的初始點(diǎn)。
一個(gè)失敗測(cè)試驗(yàn)證了在代碼中存在一些錯(cuò)誤,當(dāng)你的測(cè)試完成后這個(gè)測(cè)試應(yīng)該是通過的,現(xiàn)在的例子中,無論如何,測(cè)試都將會(huì)失敗,即使是代碼完成,因?yàn)闇y(cè)試邏輯上不是正確的。如果希望測(cè)試通過測(cè)需要測(cè)試自身進(jìn)行修改――而不是程序的代碼的改變(當(dāng)程
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度商務(wù)寫字樓租賃及商務(wù)配套服務(wù)合同4篇
- 2024版設(shè)備與集成服務(wù)采購合同
- 2025年度航空航天器材定制廠家合同樣本3篇
- 2024年金融投資與咨詢服務(wù)合同標(biāo)的及投資領(lǐng)域
- 二零二五年度老舊小區(qū)改造安置房交易協(xié)議范本3篇
- 2024礦物資源勘探技術(shù)與咨詢服務(wù)協(xié)議版
- 2025年插班生入學(xué)后校園體育設(shè)施使用與管理協(xié)議4篇
- 二零二五年度綠色農(nóng)業(yè)技術(shù)推廣應(yīng)用合同文本3篇
- 個(gè)人汽車銷售代理合同2024年度專用2篇
- 二零二五年度舞蹈培訓(xùn)學(xué)校招生代理合作協(xié)議
- 資本金管理制度文件模板
- 2025年生產(chǎn)主管年度工作計(jì)劃
- 2025年急診科護(hù)理工作計(jì)劃
- 高中家長會(huì) 高二寒假線上家長會(huì)課件
- 違規(guī)行為與處罰管理制度
- 個(gè)人教師述職報(bào)告錦集10篇
- 四川省等八省2025年普通高中學(xué)業(yè)水平選擇性考試適應(yīng)性演練歷史試題(含答案)
- 《內(nèi)部培訓(xùn)師培訓(xùn)》課件
- 《雷達(dá)原理》課件-3.3.3教學(xué)課件:相控陣?yán)走_(dá)
- 西方史學(xué)史課件3教學(xué)
- 2024年中國醫(yī)藥研發(fā)藍(lán)皮書
評(píng)論
0/150
提交評(píng)論