精準測試的軟體產品質量效率變化分析
伴隨著軟體規模的擴大和軟體快速迭代的雙重業務加速要求,軟體質量控制的壓力也越來越明顯。但黑盒測試的無力感和白盒測試的高複雜度,讓軟體測試工程師和管理者都非常鬱悶,多樣化的自動化測試工具也解決不了根本性的問題。
目前正在業內流行的精準測試技術,從企業級應用的反饋來看,它最為主要的三個技術特性,使企業在軟體質量改進方面,突破了原有的天花板。
1、 測試用例與程式碼的雙向追溯技術:使開發和測試過程視覺化,達到軟體與團隊管理的資料化交流,不再流於形式和口頭交流;灰盒的透明執行模式,不改變傳統企業流程,卻能夠將功能測試的資料對映到程式碼層面進行精準分析。
2、 延展測試資料的應用價值:精準測試在執行中會產生大量的資料,基於這些資料可以讓測試過程的價值擴充到整個研發體系,例如透過深度測試資料直接進行智慧缺陷定位,透過逆向追溯幫助開發分析進行程式碼一致性修改等。
3、 透過智慧演算法全面支援敏捷:全自動的智慧迴歸用例選取、用例聚類分析、測試漏洞分析,累計覆蓋率等技術全面支援敏捷場景下的質量保證。
本文將重點分析精準測試在研發體系中應用後的整體執行效率和質量改進分析。另本文分析資料對應的標的產品是星雲測試的ThreadingTest產品,目前也是精準功能最全面、商用化程度最高的精準測試產品(讀者可提前閱讀精準測試框架白皮書以及到體驗精準測試產品,熟悉精準測試的整體功能)。
精準測試執行效率很高。它採用的技術路線為系統級灰盒技術範疇,因此精準測試的執行過程依然是黑盒,不直接改變用例的執行方法及團隊成員構成,上手比較快。它的資料採集是基於軟體測試示波器全自動採集,用於標記採集資料和用例的對映關係,對原有測試的執行效率干擾極小,實際執行分析額外附加工作量在2%以下。精準測試必要的插裝過程無需人工干預,實施成本也是一次性的。
下圖是精準測試的執行效率圖:
1. 傳統意義上的黑盒測試方法一般在覆蓋率進入到40-50區間以後,會逐步開始產生較大執行瓶頸,測試專業上形象的稱之為殺蟲劑效應。而黑盒的瓶頸點又恰恰是精準測試的發力點。精準測試可以關聯到程式碼看到語句塊,分支,條件等的覆蓋率,也可以根據精準測試提供的各種彩色分析檢視確定漏測點。因此不管被測系統有多複雜,精準測試的執行效率均呈線性45度角穩步上升。
從上圖可以看出,越過瓶頸點後的中等覆蓋率水平,精準測試所使用的時間僅僅是傳統黑盒測試的一半,因此成本投入也將是普通黑盒測試的一半。這一點對於企業來講不僅僅是大幅度提升了測試的工作效率、加快了產品釋出時間,同時節約了大量的人力成本投入。
2. 精準測試的核心技術要點是測試用例與程式碼的追溯技術。這項技術簡單來說就是當功能執行完成以後對應的整體程式碼執行情況就會立即產生,可以理解為一種強大的全景偵錯程式,即當點選一個測試用例,就立即追蹤到對應的程式碼和模組。如果你有一個足夠大的螢幕,可以想象場景是多麼的震撼…
3. 精準測試測試漏洞分析功能,適用於敏捷測試。它可以基於程式靜態資料和動態執行資料,自動分析軟體缺陷最高風險的位置,引導首先對於高風險的模組完成覆蓋,在有限時間內完成最具有風險的模組的覆蓋測試。基於智慧缺陷定位技術,精準測試結果可以直接定位到缺陷的位置,因此精準測試讓開發人員定位缺陷的效率可以至少提升2-3倍。
4. 企業最為頭痛的迴歸測試維護,精準測試也給予了很好的方案。根據國際權威統計,平均每6行程式碼的修改,就會引入一個未知的難以直接預測的缺陷。從另一個角度來看,迴歸測試會隨著專案人員記憶模糊以及團隊調整,使不可預知的缺陷比例逐步上升。而精準測試由於其內建演算法的原因,各種資訊都極其完整的儲存在了計算機裡。我們實際對比了5個用例集在1000個左右的系統的測試,其計算用例集可控制在20%左右。另外在從迴歸測試的風險角度上看,傳統透過經驗判斷型方法,由於週期拉長後人員變動以及記憶模糊。導致發現迭代引起的未知關聯的機率越來越低,上線後引入風險。而採用精準測試,由於每輪測試記錄的資料越來越多,基礎程式碼覆蓋輻射面越來越廣,其計算準確性亦在持續上升。經過一定量的版本迭代後,其發現關聯缺陷的機率可以達到80%以上。
5. 精準測試的測試用例聚類分析功能,可以有效地發現“測試的錯誤”。比如一個用例執行步驟錯誤,它的聚類結果必然會發生變化,管理者透過系統分析的結果就可以發現並糾正這一類的錯誤,而之前可能需要在現場反覆的確認。
6. 從管理角度看,傳統架構下平均4-5個測試執行人員就需要一個管理者,管理成本極高。精準測試體系下,由於過程管理均由計算機自動記錄,管理者只需看報表就能清楚獲知專案進度情況及每位專案參與者的工作效率。透過日報、週報、月報等,輕鬆瞭解各專案狀況。後續團隊無論如何變更,都可以在被授權的情況下,透過平臺清楚地瞭解到整體框架結構與細緻追溯關係,達到快速接手、大量節省開發與維護成本的目的。
根據上述分析,精準測試適合應用於研發、測試的成熟體系中,特點是引入成本低,提高企業研發、測試效率顯著,軟體風控成果卓越。正如網路上所說,精準測試正在快速成為主流技術。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31547070/viewspace-2199820/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 軟體產品安全測試,保障軟體產品質量的關鍵性步驟
- 軟體產品測試之效能效率測試
- 有效提升軟體產品質量,測試人員必備軟體測試常用方法
- 軟體測評中心▏軟體產品測試的准入準出標準有哪些?
- 軟體產品質量如何提升?專業軟體測試公司幫您解決
- 軟體測試學習教程—軟體測試質量
- 前端高質量交付產品利器之自動化測試前端
- 精準測試:如何判斷兩次測試中哪次的質量更好?
- 軟體測試——軟體安全質量的保證
- 軟體產品確認測試
- 【軟體測試】質量保證與測試策略
- 軟體測試對軟體質量的影響有那些?
- 軟體產品為做安全測試的作用
- 軟體測試對軟體質量有哪些影響?
- 軟體測試中影響軟體需求質量的因素有哪些?
- 軟體產品化的思考
- 什麼是軟體產品登記測試?
- 精準化測試原理簡介
- 軟體測試真的有必要嗎?軟體產品測試的目的和意義是什麼?
- 關於軟體質量和軟體測試的一點點看法 (轉)
- 軟體產品為什麼要做壓力測試?
- 管理的本質:標準化、流程化、格式化-精益生產
- 怎麼做好軟體產品效能測試?專業軟體測試服務公司有哪些?
- 想有效提高軟體產品質量,第三方軟體測評機構推薦
- 軟體測試、自動化測試極容易產生的誤區
- 軟體測試基礎:測試新人如何提交一份高質量的測試用例?
- 軟體測試報告包含哪些內容?如何獲取高質量軟體測試報告?測試報告
- 軟體產品驗收測試流程有哪些?如何獲取軟體驗收測試報告測試報告
- 首版次軟體產品申報材料-軟體確認測試報告測試報告
- 軟體UI自動化測試應該怎麼做?對軟體產品起到什麼作用?UI
- IPD體系促進產品質量管理(轉)
- 當程式碼變更遇上精準測試的總結
- 今日的質量,明日的市場--談談軟體登記測試
- 基於知識圖譜的呼叫鏈分析精準化測試平臺
- 精準測試實踐
- 軟體產品案例分析 ——華為軟體開發雲
- 測試用例的最佳化與整理:確保軟體質量的關鍵步驟
- 測試工作在有效推動產品質量提升方面可以做哪些內容