首頁技術(shù)文章正文

如何進行性能測試?完整的性能測試流程

更新時間:2020-06-07 來源:黑馬程序員 瀏覽量:

一、準(zhǔn)備工作

在什么階段開展性能測試工作?一般情況下,是在被測系統(tǒng)已完成功能測試、系統(tǒng)趨于穩(wěn)定的情況下,才會進行性能測試。

1. 組建測試團隊

根據(jù)被測系統(tǒng)的實際情況,組建一個性能測試團隊,團隊成員包括:開發(fā)人員、運維人員、DBA和測試人員等。

2. 性能需求調(diào)研

性能需求調(diào)研工作一般是有性能測試人員負責(zé),產(chǎn)品經(jīng)理、開發(fā)人員、運維人員配合完成。

調(diào)研系統(tǒng)線上環(huán)境的性能需求,包括性能需求、可靠性需求、可維護性需求等。

調(diào)研系統(tǒng)相關(guān)信息,如硬件參數(shù)配置、系統(tǒng)架構(gòu)與部署方式等。

調(diào)研業(yè)務(wù)場景信息,如關(guān)鍵業(yè)務(wù)邏輯與處理流程、交易列表、交易量信息、業(yè)務(wù)分布規(guī)律等。

3. 工具的選擇

綜合系統(tǒng)設(shè)計、工具成本、測試團隊的技能來考慮,選擇合適的測試工具。

壓測工具:JMeter、Loadrunner、Locust等等。

監(jiān)控工具:nmon、lepus、jvisualvm、prometheus、grafana等等。

1591520242601_軟件測試.jpg


二、性能測試計劃

1. 分析性能測試背景

根據(jù)對項目背景和業(yè)務(wù)的了解,確定本次性能測試要解決的問題點。常見的情況有:

對于一個新系統(tǒng),需要測試系統(tǒng)的承受能力。

對于運行中的系統(tǒng)不能滿足實際的需求,需要確定性能瓶頸。

增加了新的業(yè)務(wù),需要重新評估系統(tǒng)的承受能力。

系統(tǒng)架構(gòu)進行了調(diào)整,需要重新評估系統(tǒng)的承受能力。

2. 分析用戶場景

根據(jù)對系統(tǒng)業(yè)務(wù)、用戶活躍時間、訪問頻率、場景交互等各方面的分析,整理業(yè)務(wù)場景,為測試腳本開發(fā)提供依據(jù)。

3. 確定性能目標(biāo)

針對具體的業(yè)務(wù)功能點,制定期望的性能目標(biāo)。其中需要和其他業(yè)務(wù)部門進行溝通協(xié)商,以及結(jié)合當(dāng)前系統(tǒng)的響應(yīng)時間等數(shù)據(jù),確定最終我們需要達到的響應(yīng)時間和系統(tǒng)資源使用率等目標(biāo)。

4. 制定性能測試實施計劃

根據(jù)項目組的時間安排,計劃本次性能測試的起止時間、參與人員、產(chǎn)出物等等。

三、性能測試設(shè)計

1. 測試環(huán)境設(shè)計

不同的軟件和硬件配置會制約系統(tǒng)的整體性能,所以需要部署多個不同的測試環(huán)境,在不同的硬件配置上檢查應(yīng)用系統(tǒng)的性能,并對不同配置下系統(tǒng)的測試結(jié)果進行分析,得出最優(yōu)結(jié)果。需要重點關(guān)注有數(shù)據(jù)庫服務(wù)器、應(yīng)用服務(wù)器、軟件運行環(huán)境。

2. 測試場景設(shè)計

根據(jù)被測系統(tǒng)的業(yè)務(wù)特性,并通過和業(yè)務(wù)部門溝通以及以往用戶操作習(xí)慣,確定用戶操作習(xí)慣模式,以及不同的場景用戶數(shù)量,操作次數(shù),確定測試指標(biāo),以及性能監(jiān)控等。

3. 測試用例設(shè)計

根據(jù)設(shè)計的測試場景,編寫測試用例。用例的核心內(nèi)容包括:用例編號、用例標(biāo)題、前置條件、操作步驟、測試數(shù)據(jù)、預(yù)期結(jié)果、實際結(jié)果等等。

4. 編寫測試腳本

根據(jù)測試用例和選擇的工具,準(zhǔn)備測試數(shù)據(jù),編寫測試腳本。

四、性能測試執(zhí)行

1. 部署測試環(huán)境

一般由運維或開發(fā)人員進行環(huán)境的部署,并進行資源協(xié)調(diào)。

2. 執(zhí)行測試腳本

在已部署好的測試環(huán)境中,按照業(yè)務(wù)場景和測試用例,按順序執(zhí)行我們已經(jīng)設(shè)計好的測試腳本。

3. 性能監(jiān)控和記錄

根據(jù)選擇的測試工具和監(jiān)控工具,在壓測的過程中對各項性能指標(biāo)進行監(jiān)控和記錄。

五、性能測試分析

分析不同的測試環(huán)境下,硬件設(shè)備的性能指標(biāo)與預(yù)期的性能指標(biāo)進行對比,確定是否達到了我們需要的結(jié)果。針對沒有達到預(yù)期的指標(biāo),分析具體的瓶頸點。

分析不同的測試環(huán)境下,分析應(yīng)用服務(wù)器、數(shù)據(jù)庫服務(wù)器、中間件等組件的性能指標(biāo)。

在性能測試執(zhí)行過程中,可能會發(fā)現(xiàn)某些功能上的不足或存在的缺陷,以及需要優(yōu)化的地方。

六、性能測試調(diào)優(yōu)

確定問題:根據(jù)性能分析的結(jié)果確定存在的性能問題。

分析問題:根據(jù)確定的問題進行具體詳細的分析出現(xiàn)問題的原因。

確定調(diào)整目標(biāo)和解決方案。

測試解決方案:對調(diào)優(yōu)后的系統(tǒng)再次進行測試。

分析調(diào)優(yōu)結(jié)果:分析調(diào)優(yōu)結(jié)果是否到達了預(yù)期目標(biāo)。

七、性能匯總與報告

對性能測試的過程和結(jié)果進行匯總

編寫性能測試報告

猜你喜歡:
軟件測試V4.0課程
管理類接口測試項目實戰(zhàn)課程

分享到:
在線咨詢 我要報名
和我們在線交談!