1. 程式人生 > >[轉載]第三方支付系統性能測試要點分析

[轉載]第三方支付系統性能測試要點分析

自2010年06月21日中國人民銀行公佈《非金融機構支付服務管理辦法》以來,針對非金融機構“支付業務許可證”的申請及檢測認證工作已經逐步展開。中國評測作為權威的、獨立的第三方檢測機構,也在第一時間對非金融機構第三方支付系統的檢驗認證方法進行了細緻的研究。下面,我們將結合央行檢測認證的相關規定,對非金融機構第三方支付系統性能檢測的要點進行解讀和分析。
一、第三方支付系統性能檢測內容
為配合《非金融機構支付服務管理辦法》(中國人民銀行令[2010]第2號)的實施工作,中國人民銀行於2011年1月17日釋出了《非金融機構支付服務業務系統檢測認證管理規定》(徵求意見稿)。其對第三方支付系統性能檢測的目的和內容作了如下說明:“驗證業務系統是否滿足業務需求的多使用者併發操作,是否滿足業務效能需求,評估壓力解除後的自恢復能力,測試系統性能極限”。
通過這段說明我們不難看出,對支付服務業務系統性能的檢測主要包括以下三方面內容:一是系統的併發能力驗證;二是壓力解除後系統自恢復能力;三是系統性能極限驗證。
系統的併發能力驗證應包含兩方面檢測內容:一是驗證系統是否支援業務的多使用者併發操作;二是結合典型交易檢驗各測試點在給定併發使用者數下,系統各項效能指標是否滿足使用者效能需求。
系統自恢復能力驗證的內容主要是在系統併發能力驗證和系統性能極限驗證的同時,記錄各測試點在加壓和壓力解除前後系統資源的使用情況及資源恢復所用的時間。
系統性能極限驗證的內容主要是對典型交易採用極限測試策略,通過逐步增加系統負載的方式,測試系統性能的變化,並最終確定在什麼負載條件下系統性能處於失效狀態,同時記錄此時系統所能承受的最大併發使用者數。
二、第三方支付系統性能檢測要點分析
與其他應用系統的效能測試一樣,規範的第三方支付系統性能測試同樣需要經歷測試準備、測試實施和測試總結等過程。下面,我們就結合央行檢測認證的相關規定,分析一下第三方支付系統性能測試工作中的要點。
1)效能需求分析
因各家非金融機構支付服務系統的使用者規模不同,所以央行並未對第三方支付系統性能檢測環境和效能指標進行硬性規定,效能指標的確認依據主要來自於系統需求文件中對效能的約定或使用者效能需求的調研。因此對被測系統性能測試需求的調研和分析,是整個效能測試的前期準備工作的重點,也是制定效能測試執行策略的基礎。
效能需求的主要調查內容包括:系統實際使用的使用者數量、正常情況下系統的平均使用使用者數、高峰時段的線上使用者量、可預期生命週期內系統的使用者增長情況、一年的業務量及日交易量、壓力解除後系統自恢復時間要求等。
2)測試策略分析
根據非金融機構支付服務系統的業務特點,對其效能的測試大致可分為兩類:一類是包含資料插入操作和資料查詢操作的併發測試效能(如:支付、交易明細查詢等);另一類是大資料量處理效能(如:日終批處理等)。在完成對系統業務模式和功能的瞭解後,即可根據典型交易為每個分類確定性能測試點,並結合系統性能的需求調研結果,為每個測試點制定合適的測試策略。
併發測試策略的主要內容應包括:併發使用者數、效能指標要求(包括響應時間、系統資源佔用)等;對大資料量計算效能測試策略的制定過程中,需要關注的是對批處理交易資料量的要求。

另外,在測試開始前應檢查測試環境,檢查的主要內容包括:基礎資料是否到位、測試用賬戶和資料是否準備完畢等。


3)效能測試點選取分析
按照央行的定義,第三方支付服務包含網路支付、預付卡和銀行卡收單等,而無論採用哪種支付方式,三種支付平臺實質上都是買賣雙方交易過程中的“中介軟體”,它的核心功能就是通過提供的支付閘道器為交易雙方提供支付、充值等交易服務,並記錄雙方的交易資料。對其測試點的選擇可以典型交易、複雜業務流程、頻繁的使用者操作、大資料量處理等為總體指導原則,圍繞支付、交易管理、資金結算、對賬處理等核心業務進行選取。
在網路支付系統中,我們將重點選取支付、預存、交易明細查詢、日終批處理等操作進行測試;預付卡部分重點選取聯機消費、聯機餘額查詢、交易明細查詢、批量充值、日終批處理等操作進行測試;銀行卡收單部分重點選取消費、預授權、日終批處理等操作進行測試。
三、第三方支付系統測試方法簡析
    第三方支付系統性能測試可以選擇常見的商用效能測試軟體進行,測試方法比較常見和通用。但需要注意的是由於交易過程通常需要呼叫銀行介面與協約銀行進行資料交換,因此在測試指令碼編輯過程中需要用模擬介面來替換真實的銀行介面來測試支付平臺的真實效能。預付卡和銀行卡收單其交易資料的來源均為Pos機,效能測試中只能用開發的工具或編制的指令碼來模擬傳送報文到Pos前置伺服器進行併發測試,具體可通過Socket協議編寫報文傳送指令碼的過程進行實現。