主要指當測試多用戶並發訪問同一個套用、模組、數據時是否產生隱藏的並發問題,如記憶體泄漏、執行緒鎖、資源爭用問題,幾乎所有的性能測試都會涉及並發測試。
基本介紹
- 中文名:並發測試
- 概述 :主要指當測試多用戶並發
- 概念:測試目的並非為了獲得性能指
- 用戶數:想確定用戶並發數;
概念,確定並發用戶數,
概念
測試目的並非為了獲得性能指標,而是為了發現並發引起的問題。 在具體的性能測試工作中,並發用戶往往都是藉助工具來模擬的,例如LoadRunner性能測試工具中叫做虛擬用戶;因為實際情況中去實現同時多人並發的測試環境要求比較高而測試成本高、測試時間也是比較長。
確定並發用戶數
想確定用戶並發數;必須知道系統所承載的線上用戶數;例如關註:用戶的總量、用戶平均線上數值、用戶最高峰線上數值。
例如:公司OA系統賬號或者總用戶有2000人;最高峰線上500人;但是這500人並不是作為並發用戶存在的概念。即並不表示伺服器實際承載的壓力;有可能40%關注的是首頁新聞公告板之類(注意看新聞這個階段是不能造成伺服器的壓力);20%用戶在查詢資料或者操作表格;20%用戶在發獃;20%在頁面之間跳轉;在這種情況下,只有真正20%用戶在對伺服器造成實質的影響。
我們將這個查詢、操作表格作為一個業務範疇來說;直接將這部分業務並發用戶稱為並發用戶數:
1.計算平均並發用戶數:C=NL/T
2.並發用戶峰值數:C’ ≈ C+3根號C
公式(1)中,C是平均的並發用戶數;n是login session的數量;L是login session的平均長度;T指考察的時間段長度。
公式(2)則給出了並發用戶數峰值的計算方式中,其中,C’指並發用戶數的峰值,C就是公式(1)中得到的平均的並發用戶數。該公式的得出是假設用戶的login session產生符合泊松分布而估算得到的。
假設有一個OA系統,該系統有3000個用戶,(可以看註冊信息)平均每天大約有400個用戶要訪問該系統,(日誌檔案查看)對一個典型用戶來說,一天之內用戶從登錄到退出該系統的平均時間為4小時,在一天的時間內,用戶只在8小時內使用該系統。
則根據公式(1)和公式(2),可以得到:
C = 400*4/8 = 200
C’≈200+3*根號200 = 242
但是一般的做法是把每天訪問系統用戶數的10%作為平均的並發用戶數。最大的並發用戶數乘上一個值,2或者3.