性能測試是針對系統的既定性能指標,制定測試方案,并執(zhí)行測試,得出測試結果來驗證系統性能是否滿足用戶要求而進行的測試。
性能測試結果的可參考性與測試環(huán)境有著直接的關系,如果測試是在模擬環(huán)境下進行,會存在一些問題,比如硬件和軟件配置與生產環(huán)境的不一致、測試數據量和實際生產環(huán)境的數據相差太遠等,這些因素都會影響測試結果的可參考性,因此,為了獲取準確的性能數據,真實的反映系統性能,性能測試應盡量在生產環(huán)境進行。
生產環(huán)境是業(yè)務系統正式運行的環(huán)境,一般已經上線使用了一段時間,系統中存在大量的真實業(yè)務數據,且業(yè)務數據隨著系統的運行在不斷的增加和更新中,因此在生產環(huán)境進行性能測試必然會對業(yè)務系統產生影響,甚至造成一定的風險,作為測試方,我們必須預知風險,并有效的規(guī)避風險。那么在生產環(huán)境進行性能測試可能的風險有哪些?我們在測試中應采用什么樣的手段來規(guī)避這些風險呢?下面結合我自己的一些項目經驗談一下這方面的體會。
一、在生產環(huán)境進行性能測試存在哪些風險?
(一)測試可能會導致系統崩潰
考慮到系統的業(yè)務發(fā)展,通常設定的性能指標會一定程度的高于目前系統運行時承受的壓力,在系統能承受的最大壓力未知的情況下,測試對系統施加的壓力可能超過其所能承受的壓力,導致系統崩潰,影響系統正常的業(yè)務運行。
(二)測試可能會造成數據損壞
在對系統進行壓力測試時,可能會因為系統壓力過大導致某些事務未成功執(zhí)行,從而導致相關數據被破壞;有些操作需要直接修改系統中的原始數據等,這些都可能對系統數據造成損壞。
(三)測試會產生大量垃圾數據
由于性能測試的并發(fā)用戶量大,而且要重復執(zhí)行多次,所以會在系統中產生大量的垃圾數據,影響系統的使用。為規(guī)避以上的風險,在生產環(huán)境進行性能測試時,我們應采取有效的手段避免上述風險的發(fā)生。
二、風險規(guī)避手段有哪些?
(一)重要數據事前備份、事后恢復
在執(zhí)行測試前,應盡可能對系統進行備份,至少對系統的重要數據和文件進行備份,確保系統測試結束后可以恢復到初始狀態(tài)。
(二)測試時間選擇系統空閑時間
對于系統并發(fā)負載測試或者其他可能影響系統運行并導致系統崩潰的測試操作,可以安排在系統空閑時間進行,出現系統異常時有時間可進行系統的恢復工作,不致于影響業(yè)務的正常運行。
(三)給測試數據加標記
對于系統測試過程中產生的垃圾數據要進行特殊標記,測試結束后要及時清理。測試數據可以事先準備并予以特殊標記,也可以是帶有特定意義的區(qū)域數據或者是特殊時間段內的數據,這樣,當系統測試結束后,我們可以根據這些特殊標記將相應的垃圾數據刪除,保證系統的正常運行,對于那些需要直接在系統中進行變更的數據在相應的業(yè)務操作和功能確認完成后應予以及時恢復,確保將系統恢復到數據變更前的正常狀態(tài)。
(四)實時關注系統狀態(tài)
在具體實施系統并發(fā)負載測試時,應按照指標驅動和用戶逐漸增加的方法對系統進行測試。在測試過程中,應實時關注系統狀態(tài),當系統不能承受相應的壓力時,測試立即終止,以有效保證測試不會超出系統的最大可承受壓力,避免系統崩潰和數據損壞。
相關推薦:考試吧策劃:2010年軟件水平考試完全指南北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |