????目前說到測試提效把将,基本上想到的都是自動化測試撮奏。然而,不管是手工測試還是自動化測試疮丛,都存在下面的問題轰传,即每一次版本更新時驴党,我們不確定這些更新到底影響范圍有多大,無法精準地評估出測試范圍获茬,所以不得不執(zhí)行完整的全回歸測試港庄,就算是自動化測試倔既,執(zhí)行用例花費的時間也不少,嚴重影響效率鹏氧。除此之外渤涌,當(dāng)執(zhí)行用例時,由于是黑盒測試把还,我們無法確定被測代碼的覆蓋率实蓬,很容易忽略了一些業(yè)務(wù)場景,導(dǎo)致漏測和線上問題頻發(fā)笨篷。
????之前筆者所在團隊就有這樣的瓶頸,每一次版本更新瓣履,測試內(nèi)容受QA主觀人為因素影響較大率翅,QA全憑個人經(jīng)驗來確定改動對系統(tǒng)的影響范圍,要么測試范圍定小了袖迎,造成漏測冕臭,引起線上故障,使用體驗差燕锥,嚴重時甚至造成巨大的經(jīng)濟損失辜贵;要么測試范圍過大,造成項目不能如期交付归形,另外一方面托慨,也導(dǎo)致測試資源緊張。
? ? 作為測試的你暇榴,是不是也正在經(jīng)歷上面的痛點呢厚棵?本文要分享的【精準測試】就是為了解決上面的痛點而生的,接下來筆者將與你分享關(guān)于精準測試的知識蔼紧,以及如何在實際工作中使用婆硬。
一、什么是精準測試奸例?
????精準測試是基于源代碼變更分析彬犯,結(jié)合分析算法,從而確定改動代碼影響的范圍查吊,從而進行針對性測試谐区,進一步提升測試效率,不僅如此逻卖,精準測試還可以將測試用例與程序代碼之間的邏輯映射關(guān)系建立起來卢佣, 而這個過程則是通過工具去采集測試過程執(zhí)行的代碼邏輯及測試數(shù)據(jù)。這兩個點也正是精準測試的核心:正向追溯和逆向追溯箭阶。
所以虚茶,精準測試的核心目標可以總結(jié)為以下兩點:
1戈鲁、質(zhì)量的評估不再完全靠個人經(jīng)驗和業(yè)務(wù)熟悉度,而是通過精準的數(shù)據(jù)來判定嘹叫。在測試資源有限的前提下婆殿,將用例精簡到更加有針對性,提高測試效率罩扇,有效的減少漏測風(fēng)險婆芦。
2、代碼覆蓋率的可衡量性喂饥,提升測試質(zhì)量消约,同時幫助開發(fā)定位缺陷對應(yīng)的代碼執(zhí)行邏輯,提升缺陷修復(fù)效率员帮。
二或粮、什么是正向追溯?
1捞高、【正向追溯】:解決了開發(fā)解決bug的盲目性氯材、QA測試覆蓋率的可衡量性。
可以分析出哪些代碼被覆蓋到硝岗,哪些代碼沒有被覆蓋氢哮,從而統(tǒng)計測試覆蓋率,通過代碼覆蓋率型檀,找出漏測的地方冗尤,可以更精準的進行驗證,減少重復(fù)工作胀溺,從經(jīng)驗型的主觀判斷向精準的數(shù)據(jù)可視化轉(zhuǎn)變生闲。
在用例執(zhí)行過程中,開發(fā)可以看到QA執(zhí)行用例的代碼細節(jié)月幌。從而追溯到調(diào)用具體方法與實現(xiàn)類碍讯,可直接在代碼級定位測試執(zhí)行的代碼缺陷邏輯,并提供最后運行的時序數(shù)據(jù)扯躺;可以更快地定位缺陷對應(yīng)的代碼執(zhí)行邏輯捉兴,幫助開發(fā)人員快速修復(fù)缺陷,可追蹤難復(fù)現(xiàn)缺陷录语。
2倍啥、正向追溯的流程:
三、什么是逆向追溯澎埠?
1虽缕、【逆向追溯】:解決了QA要測什么的問題,實現(xiàn)了代碼變更的影響面評估蒲稳,分析識別增量與變更代碼氮趋;
QA通過對影響的代碼做準確的針對性測試伍派,回歸的范圍更準確,避免了全量回歸造成測試資源的浪費剩胁,既保證了質(zhì)量又縮短了版本的迭代周期诉植;
極大減少回歸測試的盲目性和工作量,釋放人力成本昵观,將更多的時間和成本投入到更深晾腔,更底層的測試工作中;
2啊犬、逆向追溯流程:
四灼擂、精準測試如何落地?
????上面講的是精致測試的概念和目標以及雙向追溯的工作流程觉至,那作為測試剔应,如何進行落定呢?筆者所在的測開團隊就基于上述流程實現(xiàn)了公司的精準測試平臺康谆,前期使用效果明顯领斥。為了讓你有個直觀的感受嫉到,我截取了我們正向和逆向的結(jié)果圖:
????不同公司在實現(xiàn)精準測試平臺可能需要結(jié)合公司的測試場景而定沃暗,但是主要流程還是大同小異。所以如果你具備代碼實現(xiàn)能力何恶,可以嘗試著實現(xiàn)孽锥,我司目前精準測試平臺所用的技術(shù)棧方面沒有設(shè)計得很復(fù)雜,主要就是后端springboot以及構(gòu)建和編譯的API工具细层,前端vue惜辑。如果你沒有代碼實現(xiàn)能力,那么你可以作為需求的提出者疫赎,推送公司的技術(shù)團隊去實現(xiàn)盛撑,當(dāng)然有精力的話,也應(yīng)該學(xué)習(xí)些開發(fā)技術(shù)捧搞,積累開發(fā)經(jīng)驗抵卫,然后實現(xiàn)。
五胎撇、總結(jié)
????作為測試介粘,你需要知道精準測試解決的問題和兩個核心:正向追溯和逆向追溯。更進一步晚树,你可以作為實現(xiàn)者或者提出者推動精準測試的落地姻采。
????希望我的分享可以幫助到你,如果測試爵憎、或者實現(xiàn)過程中有什么問題也歡迎給我留言
【愛測試·愛分享】
更多內(nèi)容可關(guān)注公眾號:測試專享
專注于性能慨亲、自動化婚瓜、接口測試、中間件等技術(shù)巡雨,與您分享測試技術(shù)點滴闰渔,內(nèi)容涵蓋:Jmeter、PTS铐望、Python冈涧、Selenium、小程序自動化正蛙、Linux等熱門測試技術(shù)督弓,讓您在實戰(zhàn)中提升自我。在手機上閱讀所有文章乒验,隨時隨地都能學(xué)習(xí)愚隧。