黑盒測試:已知產(chǎn)品的功能設(shè)計規(guī)格省有,可以進行測試證明每個實現(xiàn)了的功能是否符合要求痒留。
黑盒測試
軟件的黑盒測試意味著測試要在軟件的接口處進行。這種方法是把測試對象看做一個黑盒子蠢沿,測試人員完全不考慮程序內(nèi)部的邏輯結(jié)構(gòu)和內(nèi)部特性伸头,只依據(jù)程序的需求規(guī)格說明書,檢查程序的功能是否符合它的功能說明舷蟀。因此黑盒測試又叫功能測試或數(shù)據(jù)驅(qū)動測試恤磷。
黑盒測試主要是為了發(fā)現(xiàn)以下幾類錯誤:
1、是否有不正確或遺漏的功能野宜?
2扫步、在接口上,輸入是否能正確的接受匈子?能否輸出正確的結(jié)果锌妻?
3、是否有數(shù)據(jù)結(jié)構(gòu)錯誤或外部信息(例如數(shù)據(jù)文件)訪問錯誤旬牲?
4仿粹、性能上是否能夠滿足要求?
5原茅、是否有初始化或終止性錯誤吭历?
白盒測試:已知產(chǎn)品的內(nèi)部工作過程,可以通過測試證明每種內(nèi)部操作是否符合設(shè)計規(guī)格要求擂橘,所有內(nèi)部成分是否以經(jīng)過檢查晌区。
白盒測試
軟件的白盒測試是對軟件的過程性細節(jié)做細致的檢查。這種方法是把測試對象看做一個打開的盒子通贞,它允許測試人員利用程序內(nèi)部的邏輯結(jié)構(gòu)及有關(guān)信息朗若,設(shè)計或選擇測試用例,對程序所有邏輯路徑進行測試昌罩。通過在不同點檢查程序狀態(tài)哭懈,確定實際狀態(tài)是否與預(yù)期的狀態(tài)一致。因此白盒測試又稱為結(jié)構(gòu)測試或邏輯驅(qū)動測試茎用。
白盒測試主要是想對程序模塊進行如下檢查:
1遣总、對程序模塊的所有獨立的執(zhí)行路徑至少測試一遍。
2轨功、對所有的邏輯判定旭斥,取“真”與取“假”的兩種情況都能至少測一遍。
3古涧、在循環(huán)的邊界和運行的界限內(nèi)執(zhí)行循環(huán)體垂券。
4、測試內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性羡滑,等等菇爪。
以上事實說明卒暂,軟件測試有一個致命的缺陷,即測試的不完全娄帖、不徹底性也祠。由于任何程序只能進行少量(相對于窮舉的巨大數(shù)量而言)的有限的測試,在未發(fā)現(xiàn)錯誤時近速,不能說明程序中沒有錯誤诈嘿。
灰盒測試
灰盒測試,是介于白盒測試與黑盒測試之間的削葱,可以這樣理解奖亚,灰盒測試關(guān)注輸出對于輸入的正確性,同時也關(guān)注內(nèi)部表現(xiàn)析砸,但這種關(guān)注不象白盒那樣詳細昔字、完整,只是通過一些表征性的現(xiàn)象首繁、事件作郭、標志來判斷內(nèi)部的運行狀態(tài),有時候輸出是正確的弦疮,但內(nèi)部其實已經(jīng)錯誤了夹攒,這種情況非常多,如果每次都通過白盒測試來操作胁塞,效率會很低咏尝,因此需要采取這樣的一種灰盒的方法。
參考資料
http://www.lmwlove.com/ac/id1105
http://blog.chinaunix.net/uid-20356525-id-1700448.html
http://blog.chinaunix.net/uid-21411227-id-1826810.html
http://baike.baidu.com/link?url=gZMMwouw4C_1Sq2WahADfBCfXveYqnLo-zz_TLWq9ZS3_TWDRsEHhC85h7Fh_Rg44L2UrHV5mkn7_ZMS3SSkkbgPMpKvF2zBqVXN2SsMf6eNrUNfer0nQKiCQjm3lkutjZpWgSI_MILvDMnUtnlPm2ZQXorbpfb53hqBTGjfdyRxAZcn0S1jNdCnpNrfeh7S