效能測試之業務測試模型講述,效能測試模型講述
效能測試之業務測試模型講述
隨著社會的發展,軟體產品應用到社會的各個行業領域中,且大部分支援企業關鍵的業務應用,如製造業的ERP系統、電信系統、銀行的核心業務系統、銀行卡等卡業務系統以及基於電子商務的業務系統等等都依賴於軟體業務系統的運行,這些關鍵業務系統的健全狀態關係到整個企業的運轉命脈,假如哪天系統效能突然下降或者系統崩潰,這將給企業帶來巨大的損失,就像證券交易系統時時性交易的而且關係到金錢,系統一旦崩潰說不定該證券交易所會被憤怒的股民砸了。因此對改善系統服務品質,減少操作失敗等風險,提高系統的可用性,縮短系統回應時間,提高客戶的滿意度,這對軟體效能來說非常重要,而這些問題在依賴優秀設計人員設計優良的架構外,還得依賴專業的效能測試人員對其系統進行全方位的測試,進行效能分析,檢驗系統的效能是否達到預期的效能指標。
每個行業系統軟體都有核心的業務核心交易以及部分輔助性交易系統來支撐這個行業的運作,因此作為一名專業的效能測試人員,不僅要對被測試對象的業務背景,系統的實現目標、系統的架構等都要去調研瞭解,只有這些瞭解了才能設計出好的測試案例,部署好的測試情境更真實的類比真實環境進行效能測試。
業務模型調研是測試前非常重要的一個調研環節,做為一個軟體效能測試人員,對該系統的業務測試模型調研是非常重要的,效能測試業務模型建立要以實際生產環境系統業務操作模式為標準依據,只有模型符合實際的生產業務操作,效能測試的結果才能真實有效反映將來上線的生產系統的實際效能情況。根據長期效能測試經驗,應用系統系統的效能測試模型分析應當按照下面幾個步驟來實施:
全面分析應用系統系統上線後頻繁使用的業務交易,如每天業務交易次數最頻繁、月底、季度或年末會批量處理哪些業務交易點,這些是實際生產系統所面臨的效能壓力的來源和類別,如果是已經上線系統,則可以通過分析曆史資料來確定各種業務交易資料量在整個系統壓力所佔比例,例如確定前台應用子系統的業務類別和並發比例,後台批處理業務的資料規模和類別等。最終目的是建立一類比生產應用系統系統實際運行情境的業務模型。
如果是一個新的項目而且是長期使用的項目,在對業務模型不是非常瞭解或者對今後幾年該行業的哪些交易不是很明確的情況下,可以在建資料庫表是嘗試對業務表建時間戳記,因為時間戳記可以記錄每個時間段的業務交易以及交易量,這樣是最好最容易分析系統交易量,而且最精準的,但是在實際設計方面中很少人去設計這方面的要求,對每張表增加時間戳記,畢竟需要考慮額外的系統效能開銷。
瞭解系統業務背景介紹,該業務系統面向服務物件是哪些?如果是使用中的系統或者需要改造的系統,那目前該系統註冊使用者數多少?線上使用者數多少?各類交易的使用者數多少?系統各類使用者的操作行為習慣?何時登入何時集中處理哪些類型的業務交易?
例如,銀行業的前端業務處理系統,在月底或者月初這幾天時間,都要處理很多企業類公司的薪資發放以及家庭水電費代繳等業務處理,這時的並發量非常驚人,而對於ATM前置機這時大部分員工也會通過ATM前置機進行薪資額度查詢、存取操作,這樣的高並發資料互動是效能測試人員關注點。
ATM這種類型的銀行系統在中大型城市中節點多,使用人數也多,而且業務處理頻繁,資料互動輸送量非常大,因此這種業務系統的交易處理速度是金融行業系統重要關注點,這些關係到銀行的經濟效益和廣大民眾對該銀行業務系統的評價和今後是否使用該業務系統來做存取款操作的選擇對象。一般這種商務程序中,業務終端→前置機→交易應用伺服器→資料庫主機伺服器形成了業務交易流程,每個節點在一定工作壓力下能夠正常運行是整個系統正常運轉的基礎。也就是說,如果其中任意一個節點在業務壓力下發生了擁塞、處理不及時等不正常情況,那整個系統都無法正常運轉。
對於ATM存取款機最頻繁使用的交易就是插入銀行卡輸入賬戶密碼進行賬戶與密碼身分識別驗證,一套系統的登入一樣是最簡單但是使用數最頻繁的,因此在設計測試案例時,類似交易是重點測試點,如果系統登入都有問題,系統內部的交易最佳化得在怎麼好也是徒勞無功。
因此在對類似系統進行效能測試過程中要有業務人員配合支援一起做好前期的效能測試用例設計分析。這樣才能設計好符合實際的測試情境,設計好測試策略,在壓力測試時才能測試出符合實際生產環境應用情境的效能資料價值,而且這些測試情境對效能測試結果有決定性的影響,因此測試情境的設計是非常關鍵的,情境的設計需要和業務應用結合起來。
一個規範的效能測試流程,業務需求分析是占重要地位,希望做為技術測試人員不要忽略業務的重要性,技術永遠是為商務服務的。