京東零售測試之白盒測試實踐

白盒測試之應用

  京東零售測試採購平臺測試組開展白盒測試工作已將近一年,測試了多個銷量預測項目,因銷量預測系統主要是針對預測模型的測試,黑盒測試無法覆蓋,引入白盒測試,語句覆蓋率和分支覆蓋率均達到90%以上,得到研發同事的認可及好評。下面就如何開始白盒測試進行了總結,希望能夠和大家共同探討並學習

  什麼是白盒測試?

  白盒測試又稱結構測試、透明盒測試、邏輯驅動測試或基於代碼的測試,其測試對象是軟件源代碼。

  白盒測試是一種測試設計方法,是相對黑盒而言,黑盒意思是將被測軟件當做完全不知內部結構內容情況的整體對待,白盒指的是被測軟件內部邏輯結構、數據結構完全可知,可將被測軟件拆解爲更細粒度的軟件代碼對象。"白盒"測試設計方法可全面瞭解程序內部邏輯結構、對所有邏輯路徑進行測試。在使用這一方案時,測試者必須檢查程序的內部結構,從檢查程序的邏輯着手,得出測試數據。

  白盒測試原理?

  檢查軟件代碼的語句、分支、數據、接口、架構的各種實現細節,將軟件代碼具體實現對照所應完成的功能、性能等指標進行驗證,查找軟件代碼實現的缺陷。

  白盒測試方法?

  白盒測試的測試方法有代碼檢查法、靜態結構分析法、靜態質量度量法、邏輯覆蓋法、基本路徑測試法、域測試、符號測試、路徑覆蓋和程序變異。

  設計測試用例的思路主要分爲邏輯覆蓋和數據域覆蓋。其中邏輯覆蓋包括語句覆蓋、分支覆蓋、條件覆蓋、MC/DC 覆蓋和路徑覆蓋。五種覆蓋要求呈由弱到強的變化:

1.語句覆蓋每條語句至少執行一次。

2.分支覆蓋每個分支至少執行一次。

3.條件覆蓋每個判斷條件應取到各種可能的值。

4.MCDC 覆蓋每個判斷條件需獨立影響分支結果至少一次。

5.路徑覆蓋使程序中每一條可能的路徑至少執行一次。

  如何開始白盒測試?

1、瞭解需求——可以先把軟件的用戶需求說明書,概要設計說明書,詳細設計說明書等相關的文檔拿過來,先好好的看懂,明白系統要實現什麼樣的邏輯功能,瞭解掌握程序實現的組織結構及細節;

2、測試用例設計——可以選擇一種覆蓋類型爲線索來設計測試用例;

3、測試數據準備——瞭解測試用例要用到哪些輸入數據,輸出要求是什麼;

4、編寫測試代碼——將測試用例轉換成可執行的代碼;

5、測試用例執行——針對java 語言的白盒測試,可以用白盒測試工具如junit執行測試;

6、測試結果分析——如果執行測試用例的過程中遇到實際結果和預期結果不符合,則需要深入分析測試結果,找到並解決錯誤;

7、迴歸測試——針對已經修復bug 後的源碼,進行整體的迴歸測試;

8、發佈測試報告。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章