之前為寫了寫單元測試的基礎原理和簡單的環境除錯,這次就簡述一下在進行單元測試是需要注意的東西和基礎框架。
首先,要做好單測,首先要捋清楚開發的**結構,為成功搭建單測環境奠定基礎。對於乙個比較複雜的**工程,首先要找到程式初始化的入口,明確初始化需要的成員變數和初始化的步驟邏輯,然後找到程式的主要介面,明確各個介面的作用,如果有明確提測介面,就按提測介面一層層剖析下去。
還需注意程式的公用類,在測試準備階段,大致了解公用介面的作用,方便測試過程中呼叫,也利於提高**復用性。
那怎麼提高單元測試的效率呢?
注意測試工程的整體架構設計,把初始化操作提取出來作為公用步驟—減少**冗餘,便於統一修改
每個case要注意保持隔離,不要互相依賴,比如在呼叫順序,外部資料操作上。每個case結束要注意恢復測試環境,尤其是對測試資料的影響。
每個case檢查點要清晰,深入,不建議乙個case測試多個點。
初始化測試期望時,應該盡量與期望狀態相反
case中的檢查階段,要及時輸出。如果檢查點處於多重巢狀,建議在**中輸出出錯位置—方便及時處理異常。
接下來,寫單元測試,一般都會用到乙個或多個單元測試框架,junit4,今天就簡單說說這個。
先需要思考的是單元測試框架能夠為我們做什麼呢?乙個測試框架為我們做的最基本的事情,就是允許我們按照某種更簡單的方式寫測試**,把每乙個測試單元寫在乙個測試方法裡面,然後它會自動找出所有的測試方法,並且根據你的需要,執行所有的測試方法,或者是執行單個測試方法,或者是執行部分測試方法等等。
舉個例:
public class calculatortest
@test
public void testmultiply() throws exception
}很容易看出junit4這個測試方法是測試了被測的類的那個方法,或者是測試了那個功能點等等。當然除了幫我們找出所有的測試方法,並且方便執行意外,單元測試框架還能幫我們做其他事情。
為何要進行白盒測試
軟體白盒測試是乙個與黑盒測試相對的概念,是指測試者針對可見 進行的一種測試。白盒測試通常再劃分為單元測試 整合測試兩大類,但依據不同的流程,對白盒測試細分的標準也不盡一致,比如在ibm的ipd流程之下,白盒測試可能劃分為如下幾類 模組單元測試 模組整合測試 模組系統測試 漸增build整合測試 系統...
如何進行精準測光
選擇正確的測光區域非常重要,尤其是畫面中光比較大的情況,我們該如何得到最精準的測光呢?佳能相機上標有 的按鈕可以鎖定 引數。在尼康相機上,鎖定按鈕的標識是 ae l 測光不就是相機對你取景器中這個區域進行 值的測量,這個過程很困難嗎?相機的自動測光系統在光線均勻的場景下都能正常工作,但是如果畫面主要...
如何才能高效進行DDoS防禦?
最近看了幾個新聞,發現ddos攻擊已經是目前最大的網路安全威脅之一了。所以在這跟各位 一下,怎樣才能高效進行ddos防禦呢?聽說f5在ddos防禦上做得挺不錯的,下面我為大家介紹一下。ddos防禦是企業應用安全的重點 關於如何做好ddos防禦,我可以給大家提供幾點建議 需要意識到網路攻防和合規是兩回...