【質(zhì)量管理改進(jìn)】敏捷測(cè)試思想

本文章轉(zhuǎn)載于搜狗測(cè)試

最近公司又新上馬一個(gè)項(xiàng)目,為了項(xiàng)目能夠盡快搶占市場(chǎng),產(chǎn)品、設(shè)計(jì)、開發(fā)、測(cè)試等小伙伴們?cè)谝挂岳^日地趕進(jìn)度。除了加班趕進(jìn)度,擺在大熊面前的一個(gè)巨大挑戰(zhàn)是:項(xiàng)目組提出每?jī)芍艿⑸暇€一個(gè)版本。

相信這種情況在各大小公司非常常見(jiàn),也如大熊一樣苦惱著這些問(wèn)題:

1.在版本迭代頻繁的情況下,產(chǎn)品的質(zhì)量如何保證?

2.測(cè)試人員的測(cè)試時(shí)間應(yīng)該留有多少??jī)芍埽恢苡只蛘呤?天?

3.如果測(cè)試時(shí)間被壓縮得很短情況下,質(zhì)量和進(jìn)度如何同時(shí)保證呢?

為此,大熊把當(dāng)前項(xiàng)目的流程(區(qū)分傳統(tǒng)測(cè)試流程,簡(jiǎn)稱非敏測(cè)試流程)在紙上畫了出來(lái),同時(shí)在紙上畫了另外一個(gè)心中理想的流程(簡(jiǎn)稱敏捷測(cè)試流程):

非敏測(cè)試流程

1.流程介紹:我們簡(jiǎn)單回歸下大熊所帶項(xiàng)目的測(cè)試流程過(guò)程,這一測(cè)試流程普遍存在于各個(gè)公司和各種項(xiàng)目。

需求&設(shè)計(jì)階段:與敏捷思想一致,將需求拆分成一個(gè)一個(gè)的story,安排在一個(gè)迭代內(nèi)(如兩周)可完成的需求。不求多、不求最全,通過(guò)一個(gè)版本接版本不斷完善功能。

編碼階段:開發(fā)人員根據(jù)需求進(jìn)行相應(yīng)的開發(fā)工作,待所有功能開發(fā)完畢后,提交給測(cè)試組進(jìn)行測(cè)試。

測(cè)試設(shè)計(jì)階段:測(cè)試人員在需求、設(shè)計(jì)和開發(fā)編碼階段的同時(shí),進(jìn)行測(cè)試用例的準(zhǔn)備。

測(cè)試執(zhí)行&Bug修復(fù):待開發(fā)提測(cè)后,測(cè)試人員進(jìn)行測(cè)試用例的執(zhí)行和Bug提交;而開發(fā)人員同時(shí)進(jìn)行Bug的修復(fù)。

上線:當(dāng)所有不阻塞上線的問(wèn)題處理完畢后,版本上線發(fā)布。

2.流程問(wèn)題:

存在開發(fā)提測(cè)質(zhì)量不足的風(fēng)險(xiǎn),阻塞后續(xù)的測(cè)試執(zhí)行。

大量的Bug在提測(cè)之后才暴露出來(lái),而這些問(wèn)題的發(fā)現(xiàn)和修復(fù)成本都比較高。

測(cè)試執(zhí)行階段基本依賴于手工測(cè)試,版本迭代的測(cè)試成本比較大。

即便是在測(cè)試執(zhí)行階段引入appium或selenium等自動(dòng)化測(cè)試,問(wèn)題暴露得依然很晚。(此外自動(dòng)化腳本的穩(wěn)定性也是一個(gè)更大的成本投入)

敏捷測(cè)試流程

1.流程介紹:參考業(yè)界優(yōu)秀公司和團(tuán)隊(duì)的一些做法,大熊擬定了一個(gè)改進(jìn)流程。

需求&設(shè)計(jì)階段:不做贅述,仍然做好story的拆分和安排。

編碼階段

引入代碼Review機(jī)制,加強(qiáng)代碼Review的評(píng)審和發(fā)現(xiàn)。(見(jiàn)附錄3)

引入單元測(cè)試機(jī)制。在編碼的同時(shí),開發(fā)人員將自己實(shí)現(xiàn)的類進(jìn)行單元測(cè)試。

加入測(cè)試驅(qū)動(dòng)框架搭建,方便開發(fā)人員和測(cè)試人員進(jìn)行集成測(cè)試的執(zhí)行。

測(cè)試開發(fā)人員編寫集成測(cè)試用例并執(zhí)行。

持續(xù)集成

代碼每日提交時(shí)都經(jīng)過(guò)Review系統(tǒng)進(jìn)行代碼審核。

代碼每日進(jìn)行自動(dòng)化的單元測(cè)試執(zhí)行和集成測(cè)試執(zhí)行。

當(dāng)發(fā)現(xiàn)構(gòu)建失敗、或者測(cè)試用例不通過(guò)時(shí),當(dāng)下立刻解決其中的問(wèn)題。

測(cè)試執(zhí)行&Bug修復(fù):待開發(fā)編碼均完成,單元測(cè)試和集成測(cè)試用例均通過(guò)之后(有些公司還會(huì)追求代碼行覆蓋率達(dá)到設(shè)定好的百分比),進(jìn)入測(cè)試執(zhí)行(系統(tǒng)測(cè)試)階段

上線:當(dāng)所有不阻塞上線的問(wèn)題處理完畢后,版本上線發(fā)布。

Note:為了提升覆蓋度和效率,還可以在回歸測(cè)試階段引入主路徑的CheckList自動(dòng)化和monkey穩(wěn)定性自動(dòng)化測(cè)試等工作,在上線前增加眾測(cè)等。

2.流程分析:對(duì)比非敏測(cè)試流程的問(wèn)題,問(wèn)題會(huì)得到進(jìn)一步改善。

因?yàn)閱卧獪y(cè)試和集成測(cè)試的引入,提測(cè)質(zhì)量相比之前會(huì)變得更好。

大量的Bug會(huì)在代碼Review和持續(xù)集成過(guò)程中暴露出來(lái),而問(wèn)題越早發(fā)現(xiàn),修復(fù)的成本也越低。

測(cè)試手段會(huì)拓展為自動(dòng)化+手工測(cè)試,后續(xù)版本迭代復(fù)用性高。

3.流程問(wèn)題:這一測(cè)試流程也存在很多問(wèn)題和隱患

代碼Review機(jī)制能否貫徹執(zhí)行的問(wèn)題。

開發(fā)人員單元測(cè)試的意愿度和成本問(wèn)題。(見(jiàn)附錄4)

測(cè)試開發(fā)人員的框架設(shè)計(jì)和編碼能力要求

項(xiàng)目初期需要進(jìn)行測(cè)試框架搭建、持續(xù)系統(tǒng)搭建、自動(dòng)構(gòu)建和自動(dòng)執(zhí)行等大量的基礎(chǔ)工作建設(shè)。

路雖遙遠(yuǎn),君心不搖。大熊和他們的小伙伴們正在不斷實(shí)踐和改進(jìn)中….

附錄1:代碼Review系統(tǒng)

附錄2:持續(xù)集成&單元測(cè)試

附錄3:引自《代碼大全》中什么時(shí)候進(jìn)行質(zhì)量保證工作章節(jié)

附錄4:引自《代碼大全》中開發(fā)者測(cè)試章節(jié)

“質(zhì)量保證的一部分就是制訂出一套與產(chǎn)品需求、架構(gòu)及設(shè)計(jì)相關(guān)聯(lián)的測(cè)試策略。許多項(xiàng)目開發(fā)商把測(cè)試作為質(zhì)量評(píng)估和質(zhì)量改善的首要方法,這樣的想法將使得測(cè)試不堪重負(fù)?!?-引自《代碼大全》

最后編輯于
?著作權(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),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

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