接口測試
1.定義:接口測試是測試系統組件間接口的一種測試。接口測試主要用於檢測外部系統與系統之間以及內部各個子系統之間的交互點。測試的重點是要檢查數據的交換,傳遞和控制管理過程,以及系統間的相互邏輯依賴關系等。
2.目的:
更早的發現問題
縮短產品周期
發現更底層的問題
3、方法:
可以通過接口測試工具進行接口測試,查看接口的各種參數,請求頭、請求體、響應和響應頭是否符合要求規范。接口測試工具--apipost
負載測試
1、定義:
負載測試是通過逐步增加系統負載,測試系統性能的變化,並最終確定在滿足性能指標的情況下,系統所能承受的最大負載量的測試。
2、目的:
檢測系統運行的最大上限,使系統能夠在最大的壓力下可以正常運行。從而獲取系統指標。
3、方法:
不斷增加請求壓力,直到服務器某個資源項達到飽和(比如CPU使用率達到90%+)或某個指標達到安全臨界值(比如運維的監控告警閾值or拐點)。系統負載壓力包含並發用戶數、持續運行時間、數據量等。其中並發用戶數是負載壓力的重要指標。
並發測試
1、目的:檢查系統是否有並發問題,例如內存泄漏、線程鎖、資源爭用等問題。
2、方法:確定用戶並發數,必須知道系統所承載的在線用戶數。然后在單位時間內(S)同時發起一定量的請求。
3、確定並發用戶數的方法:
例如:公司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 = 4004/8 = 200
C’≈200+3根號200 = 242
但是一般的做法是把每天訪問系統用戶數的10%作為平均的並發用戶數。最大的並發用戶數乘上一個值,2或者3.
假如說用戶要求系統每秒最大可以處理100個登陸請求,10/25/50/75/100 個並發用戶來執行登陸操作,然后觀察系統在不同負載下的響應時間和每秒事務數。如果用戶數在100的時候,響應時間還在允許范圍呢,就要加大用戶數,例如120 等 。個人理解這個用戶數就是我們經常說的等價類和邊界值法來設定。
壓力測試
1、定義:
不斷增加並發數量,給軟件不斷加壓,強制其在極限的情況下運行,觀察它可以運行到何種程度,從而發現性能缺陷。
2、目的:
查看系統能夠承受的最大並發量是多少,在達到多少並發的時候系統會崩潰。
3、方法:以負載測試或者並發測試為依據,給軟件不斷加壓,強制其在極限的情況下運行,觀察它可以運行到何種程度,從而發現性能缺陷。