掃二維碼與項(xiàng)目經(jīng)理溝通
我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
單元測試(英語:Unit Testing)又稱為模塊測試 ,是針對(duì)程序模塊(軟件設(shè)計(jì)的最小單位)來進(jìn)行正確性檢驗(yàn)的測試工作。

創(chuàng)新互聯(lián)建站為企業(yè)級(jí)客戶提高一站式互聯(lián)網(wǎng)+設(shè)計(jì)服務(wù),主要包括成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、app軟件定制開發(fā)、重慶小程序開發(fā)公司、宣傳片制作、LOGO設(shè)計(jì)等,幫助客戶快速提升營銷能力和企業(yè)形象,創(chuàng)新互聯(lián)各部門都有經(jīng)驗(yàn)豐富的經(jīng)驗(yàn),可以確保每一個(gè)作品的質(zhì)量和創(chuàng)作周期,同時(shí)每年都有很多新員工加入,為我們帶來大量新的創(chuàng)意。
單元測試允許程序員在未來重構(gòu)代碼,并且確保模塊依然工作正確(復(fù)合測試)。這個(gè)過程就是為所有函數(shù)和方法編寫單元測試,一旦變更導(dǎo)致錯(cuò)誤發(fā)生,借助于單元測試可以快速定位并修復(fù)錯(cuò)誤。
單元測試可以由兩種方式完成:
| 手工測試 | 自動(dòng)化測試 | |
|---|---|---|
| 定義 | 手動(dòng)執(zhí)行測試用例并不借助任何工具的測試被稱為人工測試。 | 借助工具支持并且利用自動(dòng)工具執(zhí)行用例被稱為自動(dòng)測試。 |
| 效率 | 消耗時(shí)間并單調(diào):由于測試用例是由人力資源執(zhí)行,所以非常緩慢并乏味。 | 快速自動(dòng)化運(yùn)行測試用例時(shí)明顯比人力資源快。 |
| 人力資源要求 | 人力資源上投資巨大:由于測試用例需要人工執(zhí)行,所以在人工測試上需要更多的試驗(yàn)員。 | 人力資源投資較少:測試用例由自動(dòng)工具執(zhí)行,所以在自動(dòng)測試中需要較少的試驗(yàn)員。 |
| 可信度 | 可信度較低:人工測試可信度較低是可能由于人工錯(cuò)誤導(dǎo)致測試運(yùn)行時(shí)不夠精確。 | 可信度更高:自動(dòng)化測試每次運(yùn)行時(shí)精確地執(zhí)行相同的操作。 |
| 程式化 | 非程式化:編寫復(fù)雜并可以獲取隱藏的信息的測試的話,這樣的程序無法編寫。 | 程式化:試驗(yàn)員可以編寫復(fù)雜的測試來顯示隱藏信息。 |
JUnit 是一個(gè) Java 編程語言的單元測試框架。JUnit 在測試驅(qū)動(dòng)的開發(fā)方面有很重要的發(fā)展,是起源于 JUnit 的一個(gè)統(tǒng)稱為 xUnit 的單元測試框架之一。
JUnit 促進(jìn)了“先測試后編碼”的理念,強(qiáng)調(diào)建立測試數(shù)據(jù)的一段代碼,可以先測試,然后再應(yīng)用。這個(gè)方法就好比“測試一點(diǎn),編碼一點(diǎn),測試一點(diǎn),編碼一點(diǎn)……”,增加了程序員的產(chǎn)量和程序的穩(wěn)定性,可以減少程序員的壓力和花費(fèi)在排錯(cuò)上的時(shí)間。
單元測試用例是一部分代碼,可以確保另一端代碼(方法)按預(yù)期工作。為了迅速達(dá)到預(yù)期的結(jié)果,就需要測試框架。JUnit 是 java 編程語言理想的單元測試框架。
一個(gè)正式的編寫好的單元測試用例的特點(diǎn)是:已知輸入和預(yù)期輸出,即在測試執(zhí)行前就已知。已知輸入需要測試的先決條件,預(yù)期輸出需要測試后置條件。
每一項(xiàng)需求至少需要兩個(gè)單元測試用例:一個(gè)正檢驗(yàn),一個(gè)負(fù)檢驗(yàn)。如果一個(gè)需求有子需求,每一個(gè)子需求必須至少有正檢驗(yàn)和負(fù)檢驗(yàn)兩個(gè)測試用例。

我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流