軟件測試生命周期

軟件測試生命周期(Software Testing Life Cycle)的八個階段詳情:

演變:

60年代:

90年代:

2000年:

測試的趨勢和能力也一直在變化。測試人員現(xiàn)在被要求做更多的面向技術(shù)和流程方面的事情。測試現(xiàn)在不僅僅限制在找bug,而且有一個更廣闊的工作范圍,從項(xiàng)目開始階段甚至需求還沒正式定下來的時候就被需要,被安排工作。

測試也是標(biāo)準(zhǔn)化的。就像軟件開發(fā)那樣有生命周期一樣,測試也有自己的生命周期。在后面的內(nèi)容,我將會討論什么是測試生命周期以及軟件測試是怎么相關(guān)聯(lián)的。

什么是生命周期?

“生命周期”這個簡單的詞是指從一個形式(狀態(tài))到另外一個形式(狀態(tài))的一系列的變化。這些變化可以發(fā)生有形或無形的事情上。每個實(shí)體都有生命周期,從開始到死亡/結(jié)束。

類似的,軟件也是個實(shí)體。就像開發(fā)軟件包括一系列的步驟,測試也有很多步驟,這些步驟按照一定順序去執(zhí)行。

通過系統(tǒng)的有計(jì)劃的執(zhí)行測試活動的現(xiàn)象被叫做測試生命周期。

什么是軟件測試生命周期(STLC)

它是指測試流程,這個流程是按照一定順序執(zhí)行的一系列特定的步驟,去保證產(chǎn)品質(zhì)量符合需求。在STLC流程中,每個活動都按照計(jì)劃的系統(tǒng)的執(zhí)行。每個階段有不同的目標(biāo)和交付產(chǎn)物。在STLC中每個組織有不同的階段;但是基本的是一樣的。

下面是STLC的8個階段:

1.需求階段(Requirements phase)

2.計(jì)劃階段(Planning Phase)

3.分析階段(Analysis phase)

4.設(shè)計(jì)階段(Design Phase)

5.實(shí)施階段(Implementation Phase)

6.執(zhí)行階段(Execution Phase)

7.總結(jié)階段(Conclusion Phase)

8.結(jié)束階段(Closure Phase)

#1.需求階段:

在這個階段,是分析和學(xué)習(xí)需求的階段。和其他團(tuán)隊(duì)一起頭腦風(fēng)暴,努力去查找需求是不是可測的。這個階段幫助去辨認(rèn)測試的范圍。如果任何功能是不可測試的,及時溝通,做出一些減輕策略(減小風(fēng)險)的計(jì)劃。

#2.計(jì)劃階段:

在實(shí)際場景中,測試計(jì)劃是測試流程的第一步。在這個階段我們辨別出哪些活動和資源能匹配測試目標(biāo)。我們也努力去辨別測試指標(biāo),測試方法以及如何追蹤這些指標(biāo)。

計(jì)劃的基礎(chǔ)是什么?只有需求嗎?

答案是NO。需求只是一種基礎(chǔ),然而還有其他2方面的因素影響測試計(jì)劃。他們是:

-組織的測試策略

-風(fēng)險分析/風(fēng)險管理和減輕

#3.分析階段:

STLC定義“WHAT”被測試。一般地,我們通過需求文檔、產(chǎn)品風(fēng)險和其他測試依據(jù)去辨別測試條件。測試條件應(yīng)該可以被追溯到需求。有很多因素可以影響測試條件的辨別:

-測試的層次和深度

-產(chǎn)品的復(fù)雜性

-產(chǎn)品和項(xiàng)目風(fēng)險

-軟件開發(fā)生命周期被涉及

-測試管理

-團(tuán)隊(duì)的知識和技能

-相關(guān)干系人的可用性

我們應(yīng)該努力用一種很詳細(xì)的方式把測試條件寫下來。例如,一個電子商務(wù)網(wǎng)站,你有一個測試條件為“用戶應(yīng)該可以支付”?;蛘吣憧梢栽敿?xì)的描述為“用戶應(yīng)該可以通過信用卡,微信、支付寶等支付”。把詳細(xì)的測試條件寫下來最大的好處是可以提高測試覆蓋率,因?yàn)闇y試用例就是通過這些測試條件寫的,這些詳情觸發(fā)寫出更多的測試用例。同時,也可以分辨出退出測試的標(biāo)準(zhǔn),比如哪些條件決定可以終止測試。

#4.設(shè)計(jì)階段:

這個階段都有“HOW”去測試。包括以下的任務(wù):

-詳述測試條件。拆分測試條件為多個子條件去提供覆蓋率。

-辨別和獲取測試數(shù)據(jù)

-辨別和搭建測試環(huán)境

-創(chuàng)建需求跟蹤指標(biāo)

-創(chuàng)建測試覆蓋指標(biāo)

#5.實(shí)施階段:

這個階段最主要的任務(wù)是創(chuàng)建詳細(xì)的測試用例。測試用例的優(yōu)先級以及哪些用例會成為回歸測試的一部分。在最終決定測試用例之前,審核測試用例的正確性是非常重要的。同時在真正執(zhí)行開始之前也不要忘了sign off(署名,比如新版本發(fā)布前的最終測試報(bào)告需要發(fā)送sign off報(bào)告)測試用例。如果你的項(xiàng)目設(shè)計(jì)自動化,分辨哪些用例適合自動化以及準(zhǔn)備測試腳本。不要忘記審核。

#6. 執(zhí)行階段:

從名字可以知道,這個階段是STLC的真正執(zhí)行階段。但在你執(zhí)行之前,確保你的標(biāo)準(zhǔn)是和需求匹配的。執(zhí)行測試用例,報(bào)bug如果有任何的不匹配。同時填寫追蹤指標(biāo)去跟蹤你的進(jìn)度。

#7.總結(jié)階段:

這個階段聚焦在檢驗(yàn)標(biāo)準(zhǔn)和報(bào)告。依賴你的項(xiàng)目和干系人選擇,你能決定是發(fā)日報(bào)還是周報(bào)等等。有不同的報(bào)告類型(日報(bào),周報(bào))你可以發(fā)送,但重點(diǎn)是,報(bào)告的內(nèi)容是根據(jù)你發(fā)送對象的不同而變化的。如果項(xiàng)目經(jīng)理屬于測試背景的,那么他們對技術(shù)方面更感興趣,因此在報(bào)告中包含技術(shù)方面的內(nèi)容(用例的pass個數(shù),fail個數(shù),bug個數(shù),嚴(yán)重bug等等)。但是如果你向更高層的干系人報(bào)告,他們可能對技術(shù)方面不感興趣,可以給他們發(fā)送一些風(fēng)險相關(guān)的,比如通過測試減輕風(fēng)險的發(fā)生。

#8.結(jié)束階段:

這個階段的任務(wù)包括:

-檢查測試的完成度。是否所有的用例被執(zhí)行或是有意減輕一些。檢查是否還有S1的bug是激活狀態(tài)。

-經(jīng)驗(yàn)總結(jié)會議及書寫相關(guān)文檔。包括哪些做得好,哪些需要提高和如何提高

總結(jié):

一起來總結(jié)一下STLC。

作者:洛書說測試

鏈接:http://www.itdecent.cn/p/21b84e176e12

來源:簡書

簡書著作權(quán)歸作者所有,任何形式的轉(zhuǎn)載都請聯(lián)系作者獲得授權(quán)并注明出處。

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

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

  • 軟件測試生命周期(Software Testing Life Cycle)的八個階段詳情: 演變: 60年代: 9...
    洛書說測試閱讀 8,852評論 0 5
  • 1****、問:你在測試中發(fā)現(xiàn)了一個bug****,但是開發(fā)經(jīng)理認(rèn)為這不是一個bug****,你應(yīng)該怎樣解決? 首...
    蛋炒飯_By閱讀 5,397評論 1 94
  • 1.測試與軟件模型 軟件開發(fā)生命周期模型指的是軟件開發(fā)全過程、活動和任務(wù)的結(jié)構(gòu)性框架。軟件項(xiàng)目的開發(fā)包括:需求、設(shè)...
    宇文臭臭閱讀 6,862評論 5 101
  • 一、 軟件測試基本概念 1 bug的概念 bug類型:defect、fault、problem、error… pr...
    三口一個瓜閱讀 4,021評論 0 12
  • -----轉(zhuǎn)載----- 1、問:你在測試中發(fā)現(xiàn)了一個bug,但是開發(fā)經(jīng)理認(rèn)為這不是一個bug,你應(yīng)該怎樣解決? ...
    花開沉浮閱讀 7,719評論 4 88

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