[TOC]
[白盒與黑盒到底什么?](http://blog.csdn.net/cadi2011/article/details/51408044)
1、我們似乎一開始工作就聽到了白盒與黑盒?是黑白無常嗎?到底他媽的是什么?
答:white-box testing(白盒測試) black-box testing(黑盒測試),沒錯,名稱的由來很簡單,直譯老外的………………沒辦法誰讓他們先進呢
白盒:就是直接從程序的源代碼里開始搞,其實主要是測試API,再細點說,就是測試public的方法(當然還有靜態代碼走查啥的,也得算到這里頭,還有語句覆蓋(就是代碼有沒有得到執行))
黑盒:那就直接通過運行程序,開始搞唄,直接使用應用,看不到源代碼,也就是我們常說的功能測試了……
總結:測試行為根據不同的角度,有非常多的分類,可見白盒與黑盒是根據是否能看見源代碼為依據的。
2、細說黑盒
答:網上一搜黑盒測試,好家伙,立馬就有分類了,黑盒包括功能測試與性能測試
功能測試又細分:邏輯測試、ui測試、易用性測試、兼容性測試
性能測試又細分:空間測試、時間測試
功能測試細分內容白話解釋
邏輯測試:說白了就是人機交互事件測試,例如app里,你點擊按鈕啦什么的
ui測試:就是你眼睛看到的和設計稿是否一致
易用性測試:那就更簡單了,就是用戶體驗,你用的爽不爽
兼容性測試:操作系統可以運行在不同的硬件,like Android運行在很多不同的手機上,你要把你的app在每一個操作系統上遍歷一遍
空間測試:所謂空間,是你的app占用操作系統多少資源
時間測試:你的app占用了操作系統資源,最直接影響的就是啟動時間、加載時間,你用直觀的眼睛看到!
3、再議白盒
答:包含有:
靜態代碼走查(當然人工看起來就得累死,必須有框架啊)
代碼覆蓋率(就是每一條語句有沒有得到執行,有的開發哥哥,寫的判斷,其實有的語句一輩子都執行不到,還有一些像廢棄的一些方法)
邏輯功能走查(通常情況下是直接調用public 的方法)
三個都是白盒測試常用的一些測試內容
4、最后總結
白盒:從代碼里做,實例方法,就拿到實例對象調用,靜態方法,就拿到類調用。可做public,也可做private,總之想做就可以做,單元測試,就是白盒測試的一種……
黑盒:就是功能測試、手工測試,人肉測試………………………………