大家好,我是十一。
我們提供的服務(wù)有:成都做網(wǎng)站、成都網(wǎng)站建設(shè)、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、樟樹ssl等。為上千企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的樟樹網(wǎng)站制作公司還記得我們上篇中的測試分類圖嗎?其中有一部分是“按軟件開發(fā)階段劃分”,不記得沒關(guān)系,這里我截了圖出來,大家直接看圖吧。
這個圖呢就是我們這篇所要講解的內(nèi)容。主要針對他們是什么,什么階段工作、測試對象、測試人員、測試依據(jù)、測試方法、測試內(nèi)容等等。要做好筆記哦。
如圖“按軟件開發(fā)階段劃分”成其后的7種測試,那顧名思義,其后的7種測試就都是在軟件開發(fā)的各個階段進(jìn)行的。不同階段做不同的測試。
單元測試Unit Testing又稱為模塊測試,是指對軟件中的最小可測試單元進(jìn)行檢查和驗證。是對代碼進(jìn)行測試。
測試階段:編碼后
測試對象:最小模塊
測試人員:開發(fā)工程師
測試依據(jù):代碼+詳細(xì)設(shè)計文檔
測試方法:白盒測試
測試目的:檢驗軟件基本組成單位的正確性。
測試內(nèi)容:模塊接口測試、局部數(shù)據(jù)結(jié)構(gòu)測試、路徑測試、錯誤處理測試、邊界測試
這部分了解即可。
集成測試(Integration Testing)也稱聯(lián)合測試、組裝測試,在單元測試的基礎(chǔ)上,將所有模塊按照概要設(shè)計說明書和詳細(xì)設(shè)計說明書的要求進(jìn)行組裝。對系統(tǒng)的接口及集成/組裝后的功能進(jìn)行正確性檢測的測試工作。
測試階段:單元測試之后
測試對象:模塊間的接口
測試人員:白盒/高級測試工程師
測試依據(jù):單元測試的模塊+概要設(shè)計文檔+詳細(xì)設(shè)計說明書
測試方法:黑盒測試與白/灰盒測試相結(jié)合
測試目的:主要是檢查軟件單位之間的接口的正確性,另外還要檢查集成后的功能的正確性
測試內(nèi)容:模塊之間數(shù)據(jù)傳輸、模塊之間功能沖突、模塊組裝功能正確性、全局?jǐn)?shù)據(jù)結(jié)構(gòu)、單模塊缺陷對系統(tǒng)的影響
包括對功能、性能以及軟件所運行的軟硬件環(huán)境進(jìn)行測試,偏于業(yè)務(wù)角度的測試,主要是驗證系統(tǒng)是否滿足需求。
測試階段:集成測試通過之后
測試對象:整個系統(tǒng)(軟、硬件)
測試人員:黑盒/初、中級測試工程師
測試依據(jù):需求規(guī)格說明書
測試方法:黑盒測試
測試目的:驗證系統(tǒng)是否滿足需求
測試內(nèi)容:業(yè)務(wù)邏輯(功能)、界面、兼容性、易用性、安裝、文檔、性能、穩(wěn)定性、安全性等
是部署軟件之前的最后一個測試操作。它是技術(shù)測試的最后一個階段,也稱為交付測試。驗收測試的目的是確保軟件準(zhǔn)備就緒,并且可以讓最終用戶將其用于執(zhí)行軟件的既定功能和任務(wù)。
測試階段:系統(tǒng)測試通過之后
測試對象:整個系統(tǒng)(軟、硬件)
測試人員:系統(tǒng)用戶(測試人員+客戶代表,或者客戶方相關(guān)工作人員)
測試依據(jù):需求規(guī)格說明書+任務(wù)書
測試方法:黑盒測試
測試目的:確定產(chǎn)品是否能夠滿足合同或用戶所規(guī)定需求
測試內(nèi)容:同系統(tǒng)測試
是指修改了舊代碼后,重新進(jìn)行測試以確認(rèn)問題已修復(fù)并且沒有引入新的錯誤。
測試階段:軟件開發(fā)的各個階段都會進(jìn)行多次回歸測試
測試對象:對應(yīng)的bug以及相關(guān)模塊的部分測試用例
測試人員:相關(guān)測試人員(各個階段的回歸測試對應(yīng)各個階段的測試人員)
測試依據(jù):bug描述+軟件開發(fā)各個階段測試的依據(jù)物
測試方法:軟件開發(fā)各個階段測試對應(yīng)的測試方法
測試目的:重新進(jìn)行測試以確認(rèn)修改沒有引入新的錯誤或?qū)е缕渌a產(chǎn)生錯誤
測試內(nèi)容:對應(yīng)的bug描述內(nèi)容以及相關(guān)模塊的部分測試用例(不限)
又稱α測試,是非正式驗收測試,屬于驗收測試的一種,是由一個用戶或者公司內(nèi)部的用戶在模擬生產(chǎn)環(huán)境下進(jìn)行的測試。α測試的目的是評價軟件產(chǎn)品的FLURPS(即功能、局域化、可用性、可靠性、性能和支持)。
測試階段:上述所有測試通過之后
測試對象:整個系統(tǒng)(軟、硬件)的核心業(yè)務(wù)流程
測試人員:由軟件的實際用戶(客戶方相關(guān)代表)或者是公司內(nèi)部的用戶,一般都應(yīng)該是軟件的實際用戶
測試依據(jù):需求規(guī)格說明書+達(dá)成一致的驗收標(biāo)準(zhǔn)(是項目初期與客戶溝通好并且達(dá)成一致結(jié)果的驗收標(biāo)準(zhǔn),如果沒有,按照需求規(guī)格說明書標(biāo)準(zhǔn)判斷)
測試方法:方法不限(白盒測試或者黑盒測試都有可能)
測試目的:評價軟件產(chǎn)品的FLURPS(即功能、局域化、可用性、可靠性、性能和支持)
測試內(nèi)容:以上測試的所有內(nèi)容的子集或者全集
又稱β測試,用戶驗收測試,也屬于驗收測試的一種,由軟件的最終用戶們在一個或多個客戶場所進(jìn)行。
測試階段:α測試達(dá)到一定的可靠程度時,才能開始β測試
測試對象:整個系統(tǒng)(軟、硬件),完全由相關(guān)責(zé)任人(測試人員)來決定
測試人員:軟件的實際用戶
測試依據(jù):需求規(guī)格說明書+達(dá)成一致的驗收標(biāo)準(zhǔn)
測試方法:方法不限,同測試對象,是由相關(guān)責(zé)任人(測試人員)來決定
測試目的:β測試主要衡量產(chǎn)品的FLURPS,著重于產(chǎn)品的支持性,包括文檔,客戶培訓(xùn)和支持產(chǎn)品生產(chǎn)能力。
測試內(nèi)容:完全由相關(guān)責(zé)任人(測試人員)來決定
下面我們簡單介紹下α測試與β測試的區(qū)別:
首先這兩個測試一般都是大型通用軟件中才有的,是軟件上線/發(fā)布前的最后階段的測試。
測試的場所不同:Alpha測試是指把用戶請到開發(fā)方的場所來測試,Beta測試是指在一個或多個用戶的場所進(jìn)行的測試。
測試環(huán)境不同:Alpha測試的環(huán)境是受開發(fā)方控制的,用戶的數(shù)量相對比較少,時間比較集中。Beta測試的環(huán)境是不受開發(fā)方控制的,用戶數(shù)量相對比較多,時間不集中。
執(zhí)行時間不同:Alpha測試先于Beta測試執(zhí)行,且Beta測試需要在Alpha測試達(dá)到一定的可靠程度才能執(zhí)行。
總結(jié):上述我們總共講了7種測試,那么對于初級測試的大家來說我認(rèn)為單元測試與Alpha、Beta測試大家只要做簡單了解即可;另外的集成測試、系統(tǒng)測試、回歸測試、驗收測試這4種則是重中之重,需要大家掌握并且理解的。
為了方便大家理解,我用“手機(jī)”給大家舉個例子。
手機(jī)出廠前經(jīng)過一系列的測試,我選擇幾個有代表意義的讓大家感受下,大家在讀的過程中可以自己思考下如何與上述內(nèi)容一一對應(yīng)。
集成測試:
充電器插拔測試,充電器能否插上,且插上充電后能否正常充電,拔了后是否顯示不通電等等
音量增減開關(guān)測試:按增量鍵,音量增大;按減量鍵,音量減小
攝像頭檢測:檢測攝像頭是否能正常工作,且像素與說明一致
系統(tǒng)測試:
界面上所有按鍵一一測試:是否與說明書一致
開機(jī)使用:界面美觀、易用、操作系統(tǒng)兼容、app使用、是否能設(shè)置密碼/指紋等等
電池耐用性檢測:檢測電池在不同溫度/濕度下的電池?fù)p耗、使用情況等等
驗收測試:
工廠組織質(zhì)檢部抽檢,檢查手機(jī)是否與合同(比如數(shù)量)或者需求說明書上(比如質(zhì)量、大小、厚度、功能等)內(nèi)容一致
客戶方代表抽查與合同或者需求說明書一一核對檢測
國家質(zhì)檢部對齊進(jìn)行檢測,看齊是否合格等等,合格給予合格證書
買手機(jī)的我們拿到手機(jī)通過使用來檢測是否符合手機(jī)商品描述以及說明書上說明等等
回歸測試:
以上各個環(huán)節(jié)遇到問題問題后返工到工廠或者售后,然后“檢測員”(不限是誰,哪個環(huán)節(jié)出問題,那么由相關(guān)測試責(zé)任人來回歸)對其進(jìn)行二次測試。
故事講完了,你能將故事與咱們這節(jié)課的內(nèi)容一一對應(yīng)上嗎?
集成測試,對系統(tǒng)的接口及集成/組裝后的功能進(jìn)行正確性檢測
系統(tǒng)測試,確定產(chǎn)品功能是否與需求說明書描述一致。
回歸測試,重新進(jìn)行測試以確認(rèn)修改沒有引入新的錯誤或?qū)е缕渌a產(chǎn)生錯誤
驗收測試,確定產(chǎn)品是否能夠滿足合同或用戶所規(guī)定需求