我的效能測試工作流程
1、須透過功能測試
效能測試是基於現狀的調優,未透過功能測試情況下,沒有參考意義。每一次開始效能測試都應該先進行功能測試。
2、圍繞問題做簡單建模
瞭解問題的流程上的大致節點,根據設計文件 (需求文件/開發文件) 或是程式碼估算每個節點的時間複雜度,在實際測試中,可以以此來參考,發現問題節點。如果遇到問題節點,才去對問題節點做進一步解析。
3、得出測試鏈路測試
一般而言效能測試都有業務導向,他們都會基於簡單的目的,功能在壓力下使用依舊流暢或者是可用。如支援10萬人同時下單
,可能你無法從產品口中得到10w
這種準確的指標,但是你可以很容易的得出下單
的這個需求,而具體合適的效能指標,可以透過同行經驗,或是已有的資料,進行資料分析得出。如果是全新的體系,則需要摸索中得出了 (就好像傳統的介面會以響應時間作為指標,如今文字類的大模型,可以將每秒生成多少 token 作為自己的指標一樣)
但是你可能會遇到異常業務流程比正常業務流程的耗時更長的問題。如果你沒有線上資料 (埋點和記錄明細) 支援,我建議你都進行測試,避免意外。如果不是的情況下,完成正常業務流程的測試即可。
在上面的舉例中,瀏覽 -> 詳情 -> 選sku -> 瀏覽
的流程,比直接下單的時間複雜度要高。這也和我們的實操很相符,花時間去選購商品,或者對常購商品的直接購買。於是在上面的估算中得出了兩條鏈路。
4、進行梯度壓力測試
不同的壓力對應不同的能力,在實測中記錄表現。得出效能拐點。
5、效能最佳化
引起這個問題一般有兩個原因,未達到明確的效能要求,未達到行業要求。最佳化時要先檢驗設計和實際實施是否有出入 (索引沒建、索引失效、快取失效),如有出入則修改後二次測試,直至實施達到設計。如無出入,考慮最佳化方案,提高能力。
6、設計餘量
為抵抗流量激增帶來的風險,設計餘量有助於我們抵抗一些特殊場景。如實際測試為 10tps。7tps 則是合適的值。同時也可以為監控提供參考,預防突然死亡
7、擴充套件方案設計
系統支援橫向或縱向擴充套件,以應對餘量不足時,可直接透過擴充套件解決問題,如直接新增伺服器,磁碟更換 (提高 IO), 新增硬碟 (攤分 IO)。而此類擴充套件本身在正常情況下,能多支援 90% 或以上的壓力
相關文章
- 效能測試流程各階段的工作
- 效能測試工作流程淺談
- 效能測試的流程
- 效能測試流程
- 測試工作流程
- web效能測試流程Web
- 軟體測試中功能測試的測試工作流程
- 效能測試總結(二)---測試流程篇
- 軟體測試工作流程
- 效能測試 -- 工作覆盤
- 雲網路效能測試流程
- 基於jmeter的效能全流程測試JMeter
- 軟體測試工作流程圖流程圖
- 軟體測試LR效能分析流程
- 測試已死?我看未必!分享我在華為做敏捷測試的那些流程……敏捷測試
- 我的測試之旅:(9)行動——簡化測試文件和流程
- 效能測試準備工作例項
- LoadRunner效能測試工具---(一)使用流程
- 我的測試之旅:(7)啟程——Scrum中的測試工作者Scrum
- 效能測試的流程及常用工具介紹
- 介面測試測試流程
- 測試流程和理論--測試流程體系
- 第三方軟體測試機構▏軟體效能測試的測試流程和指標簡析指標
- 軟體測試的流程
- 記測試流程
- CTS測試流程
- 【效能測試】使用ab做Http效能測試HTTP
- Redis的效能測試Redis
- 效能測試
- 效能測試:分散式測試分散式
- Jmeter介面測試+效能測試JMeter
- 介面測試和效能測試的區別
- 第三方軟體測試機構進行效能測試有哪些流程?
- 由國產效能測試工具WEB壓力測試模擬能力對比讓我想到的Web
- 我的測試之旅:(10)貢獻——開發項流程(Development Item Process)dev
- 小白測試系列:介面測試與效能測試的區別
- 功能測試、自動化測試、效能測試的區別
- 關於測試流程的思考