淺談軟體測試基礎:你有必要聚焦一下回歸測試

博為峰網校發表於2019-06-14

最近,從生產上反饋了一些產品缺陷,開發、測試一起對缺陷進行了多維度的原因分析,缺陷的逃逸是由產品生產過程中多種因素造成的,其中有部分原因是迴歸測試的策略選用不當。在此,我們有必要聚焦一下回歸測試。

淺談軟體測試基礎:你有必要聚焦一下回歸測試

什麼是迴歸測試

迴歸測試的英文名稱:Regression Testing,從字面上看,是“倒退測試”。這就表明,軟體有當前狀態和原來狀態之分。迴歸測試就是對軟體的原來狀態重新進行功能和非功能的測試,用以確保先前開發並測試過的軟體在缺陷修復、配置改變、軟體更新等等這些變化之後,仍能符合要求的執行(即:軟體當前狀態中那些沒有被修改的部分的功能和非功能與原來狀態保持一致)。

這裡所說的軟體當前狀態和原來狀態的概念,可以簡單的認為,每一個當前提交測試的版本就是該軟體的當前狀態,上一個版本就是原來狀態。或者,當前基線就是當前狀態,上一次基線就是原來狀態。具體如何區分,可以根據管理要求來制定。

迴歸測試的時機

不論是基於新產品的開發還是老產品的維護升級,迴歸測試都是一個完整測試必不可少的一部分。通常,需要進行迴歸測試的時機是:

缺陷修復

當開發人員完成對當前狀態的軟體進行缺陷修復之後,並且提交新的測試版本或進行了程式碼基線;

軟體更新

開發人員完成新增功能和程式碼重構之後,並且提交測試版本或進行了程式碼基線。其中,新增功能往往對應於維護類的產品,對其要進行完整的測試,即對新功能的驗證測試,以及迴歸測試。對於程式碼重構,應該本著執行質量永遠高於程式碼質量的原則慎重對待,如果一旦決定重構,則必須進行全量回歸測試;

配置改變

出於軟體引數配置靈活性以及運維高效的需要,對配置檔案、指令碼、批處理命令、儲存過程進行修改並正式通知測試部門之後。

迴歸測試的技術

迴歸測試的技術通常有以下三種:

全量測試用例重複測試

對當前狀態的軟體進行全部測試用例的執行和結果檢查。這種技術由於進行的是全量測試用例的重新執行,能將缺陷遺漏的風險降至最低水平,但是測試成本(時間成本、人力成本、財務成本)很高;

選擇部分測試用例重複測試

與上述不同的是,只對當前狀態的軟體進行部分測試用例的執行和檢查。這種技術的最大好處是測試成本(時間成本、人力成本、財務成本)低於全量測試用例重複測試;

測試用例最佳化

測試用例的最佳化技術是指,從測試用例的範圍即有效和效率角度出發,最佳化、提取對後續軟體版本或特定版本有用的測試用例(集合)。

迴歸測試的策略

迴歸測試技術用以服務於迴歸測試策略。通常情況下,我們在日常工作中會在以下策略中進行選擇。

全量回歸測試策略

在一些特殊行業,比如金融、通訊行業,對生產環境中軟體產品質量的要求通常是嚴重以上級別的逃逸缺陷是0,在此情況下,我們必須用安全係數最高、風險等級最低的策略進行迴歸測試,以達到質量要求。這時,我們可以採用全量測試策略,使用全量測試用例重複測試的技術進行迴歸測試。

全量回歸測試策略可以適用任何情況,它是一種不是策略的策略,雖然有效,卻不高效。

非全量回歸測試策略

實際工作中,測試用例會越來越多,工作量也會越來越大,特別是維護更新類的產品。當質量要求不變,又有上線時間以及其它條件制約時,我們會選擇非全量回歸測試策略,使用部分測試用例重複測試技術進行迴歸測試。這也是我們最常使用的策略。

歡迎加入  51軟體測試大家庭,在這裡你將獲得【最新行業資訊】,【免費測試工具安裝包】,【軟體測試技術乾貨】,【面試求職技巧】... 51與你共同學習,一起成長!       企鵝群:                    755431660

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31407649/viewspace-2647698/,如需轉載,請註明出處,否則將追究法律責任。

相關文章