在軟件生命周期中,即使一個得到良好維護的測試用例庫也可能變得相當大,使得每次匣I歸測試都重新運行完整的測試包變得不切實際,時間和成本的限制也不允許進行完全的測試,需要從測試用例庫中選擇有效的測試用例,構造一個縮減的測試用例組來完成回歸測試。
回歸測試的價值在于它是一個能夠檢測到回歸錯誤的受控實驗。當測試組選擇縮減的回歸測試時,有可能忽略了將發現揭示回歸錯誤的測試用例,而錯失了發現回歸錯誤的機會。然而,如果采用了代碼相依性分析等安全的縮減技術,就可以決定哪些測試用例可以被刪除而不會影響回歸測試的結果。
選擇回歸測試方法應該兼顧效率和有效性兩個方面,下面有幾種方法,在效率和有效性方面的側重點是不同的。
· 再測試全部用例:選擇測試用例庫中的全部測試用例構成回歸測試包,這是一種比較安全的方法,遺漏回歸錯誤的風險最低,但測試成本最高。再測試全部用例幾乎可以應用到任何情況下,基本上不需要進行用例分析和設計,但是隨著開發工作的進展,測試用例不斷增多而帶來相當大的工作量,會受預算和進度的限制。
· 基于風險選擇測試:基于一定的風險標準來從測試用例庫中選擇回歸測試包。首先運行最重要的、關鍵的和可疑的測試,而跳過那些次要的、例外的測試用例或那些功能非常穩定的模塊。運行那些次要用例即便發現缺陷,這些缺陷的嚴重性也較低。
· 基于操作剖面選擇測試:如果測試用例是基于軟件操作剖面開發的,測試用例的分布情況反映了系統的實際使用情況;貧w測試所使用的測試用例個數可以由測試預算確定,回歸測試可以優先選擇那些針對最重要或最頻繁使用功能的測試用例,釋放和緩解最高級別的風險,有助于盡早笈現那些對可靠性有最大影響 的故障。
· 再測試修改的部分:當測試者對修改的局部有足夠的信心時,可以通過相依性分析識別軟件的修改情況并分析修改的影響,將回歸測試局限于被改變的模塊和它 的接口I:。通常,一個回歸錯誤一定涉及被修改的或新加的代碼。在允許的條件下,回歸測試盡可能覆蓋受到影響的部分。這種方法可以在一個給定的預算下最有效地提高系統可靠性,但需要豐富的經驗和深入地代碼分析。
綜合運用多種測試技術是常見的,在世l歸測試中也不例外,測試者也可能希望采用多于一種回歸測試策略來增強對測試結果的信心。不同的測試者可能會依據自己的經驗和判斷選擇不同的回歸測試技術和方法。
文章來源于領測軟件測試網 http://www.kjueaiud.com/