測試是什么?測試流程是怎樣的?

1、按是否查看程序內(nèi)部結(jié)構(gòu)分為:

(1)黑盒測試(black-box testing):只關(guān)心輸入和輸出的結(jié)果

(2)白盒測試(white-box testing):去研究里面的源代碼和程序結(jié)構(gòu)

此外,還有灰盒測試:介于黑、白盒測試之間的,關(guān)注輸出對(duì)于輸入的正確性,同時(shí)也關(guān)注內(nèi)部表現(xiàn)

2、按是否運(yùn)行程序分為:

(1)靜態(tài)測試(static testing):是指不實(shí)際運(yùn)行被測軟件,而只是靜態(tài)地檢查程序代碼、界面或文檔可能存在的錯(cuò)誤的過程。

靜態(tài)測試包括:

對(duì)于代碼測試,主要是測試代碼是否符合相應(yīng)的標(biāo)準(zhǔn)和規(guī)范。

對(duì)于界面測試,主要測試軟件的實(shí)際界面與需求中的說明是否相符。

對(duì)于文檔測試,主要測試用戶手冊(cè)和需求說明是否真正符合用戶的實(shí)際需求。

(5)動(dòng)態(tài)測試(dynamic testing),是指實(shí)際運(yùn)行被測程序,輸入相應(yīng)的測試數(shù)據(jù),檢查輸出結(jié)果和預(yù)期結(jié)果是否相符的過程

3、按階段劃分:

(1)單元測試(unit testing),是指對(duì)軟件中的最小可測試單元進(jìn)行檢查和驗(yàn)證。

樁模塊(stud)是指模擬被測模塊所調(diào)用的模塊,驅(qū)動(dòng)模塊(driver)是指模擬被測模塊的上級(jí)模塊,驅(qū)動(dòng)模塊用來接收測試數(shù)據(jù),啟動(dòng)被測模塊并輸出結(jié)果。

(2)集成測試(integration testing),是單元測試的下一階段,是指將通過測試的單元模塊組裝成系統(tǒng)或子系統(tǒng),再進(jìn)行測試,重點(diǎn)測試不同模塊的接口部門。

集成測試就是用來檢查各個(gè)單元模塊結(jié)合到一起能否協(xié)同配合,正常運(yùn)行。

(3)系統(tǒng)測試(system testing),指的是將整個(gè)軟件系統(tǒng)看做一個(gè)整體進(jìn)行測試,包括對(duì)功能、性能,以及軟件所運(yùn)行的軟硬件環(huán)境進(jìn)行測試。

系統(tǒng)測試的主要依據(jù)是《系統(tǒng)需求規(guī)格說明書》文檔。

(4)驗(yàn)收測試(acceptance testing),指的是在系統(tǒng)測試的后期,以用戶測試為主,或有測試人員等質(zhì)量保障人員共同參與的測試,它也是軟件正式交給用戶使用的最后一道工序。

驗(yàn)收測試又分為a測試和beta測試,其中a測試指的是由用戶、 測試人員、開發(fā)人員等共同參與的內(nèi)部測試,而beta測試指的是內(nèi)測后的公測,即完全交給最終用戶測試。

4、黑盒測試分為功能測試和性能測試:

1)功能測試(function testing),是黑盒測試的一方面,它檢查實(shí)際軟件的功能是否符合用戶的需求。

包括邏輯功能測試(logic function testing)

界面測試(UI testing)UI=User Interface

易用性測試(usability testing):是指從軟件使用的合理性和方便性等角度對(duì)軟件系統(tǒng)進(jìn)行檢查,來發(fā)現(xiàn)軟件中不方便用戶使用的地方。

兼容性測試(compatibility testing):包括硬件兼容性測試和軟件兼容性測試

2)性能測試(performance testing)

軟件的性能主要有時(shí)間性能和空間性能兩種

時(shí)間性能:主要指軟件的一個(gè)具體事務(wù)的響應(yīng)時(shí)間(respond time)。

空間性能:主要指軟件運(yùn)行時(shí)所消耗的系統(tǒng)資源。

軟件性能測試分為:

一般性能測試:指的是讓被測系統(tǒng)在正常的軟硬件環(huán)境下運(yùn)行,不向其施加任何壓力的性能測試。

穩(wěn)定性測試也叫可靠性測試(reliability testing):是指連續(xù)運(yùn)行被測系統(tǒng)檢查系統(tǒng)運(yùn)行時(shí)的穩(wěn)定程度。

負(fù)載測試(load testing):是指讓被測系統(tǒng)在其能忍受的壓力的極限范圍之內(nèi)連續(xù)運(yùn)行,來測試系統(tǒng)的穩(wěn)定性。

壓力測試(stress testing):是指持續(xù)不斷的給被測系統(tǒng)增加壓力,直到將被測系統(tǒng)壓垮為止,用來測試系統(tǒng)所能承受的最大壓力。(Validate the system or software can allowed the biggest stress.)

5、其他測試類型:

回歸測試(regression testing)是指對(duì)軟件的新的版本測試時(shí),重復(fù)執(zhí)行上一個(gè)版本測試時(shí)的用例。(When a new build or release is deployed, repeat all the test cases which has executed in the last build or release.)

冒煙測試(smoke testing),是指在對(duì)一個(gè)新版本進(jìn)行大規(guī)模的測試之前,先驗(yàn)證一下軟件的基本功能是否實(shí)現(xiàn),是否具備可測性。(validate the major function is deployed or not in software of system when a new build or release is implement.)

隨機(jī)測試(random testing),是指測試中所有的輸入數(shù)據(jù)都是隨機(jī)生成的,其目的是模擬用戶的真實(shí)操作,并發(fā)現(xiàn)一些邊緣性的錯(cuò)誤。(means or all the test data is random, to validate the some edge bugs.)

測試流程

1.通用的測試流程:

需求——》開發(fā)——》自測(開發(fā))——》產(chǎn)品/設(shè)計(jì)驗(yàn)收——》提測——》測試——》上線

2.流程要持續(xù)優(yōu)化,不斷改進(jìn),滿足工作需要(如產(chǎn)品通過發(fā)郵件通知,如開發(fā)代碼的review,如單元測試的推進(jìn))一切都為了產(chǎn)品的質(zhì)量。

3.持續(xù)集成,結(jié)果及時(shí)反饋

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容