日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

Get這些性能測(cè)試分解操作后,你的測(cè)試之路會(huì)更順

 學(xué)掌門 2022-02-15

之前有在自己建的測(cè)試群直播分享了一些性能測(cè)試的基礎(chǔ)內(nèi)容,當(dāng)時(shí)有人說希望有個(gè)實(shí)戰(zhàn)的分享,想了想某些東西屬于公司機(jī)密不方便直接直播分享,

這里就拿最近我做的一個(gè)性能測(cè)試實(shí)例來舉例子說說,理解為主。。。

先看看一個(gè)完美的性能測(cè)試流程是怎樣的,如下圖:

當(dāng)然,實(shí)際工作中能實(shí)現(xiàn)這種完美的流程很難,下面挑重點(diǎn)的介紹。。。

一、獲取測(cè)試需求

大概上周三接到這樣一個(gè)性能測(cè)試需求,大概的業(yè)務(wù)邏輯如下圖:

簡單概括下業(yè)務(wù)邏輯,就是:發(fā)起一個(gè)拼團(tuán),其他人點(diǎn)擊活動(dòng)進(jìn)去,領(lǐng)券,然后領(lǐng)券時(shí)要驗(yàn)證拼團(tuán)的有效性,在買單用券時(shí),先驗(yàn)證是否是會(huì)員,如果不是,先注冊(cè)會(huì)員,再將券和會(huì)員綁定!

具體的性能指標(biāo)是:驗(yàn)證上圖4個(gè)場景中的接口,在響應(yīng)時(shí)間為3S和5S時(shí),服務(wù)器的TPS值(這屬于系統(tǒng)性能能力驗(yàn)證的應(yīng)用領(lǐng)域)。

測(cè)試的系統(tǒng),是公司的微信會(huì)員系統(tǒng),系統(tǒng)架構(gòu)相對(duì)熟悉,這里不過多介紹。

二、測(cè)試計(jì)劃和方案

所謂的測(cè)試計(jì)劃,無非就是某人用多久時(shí)間用什么資源什么方法完成什么事情。

由于這次性能測(cè)試需求工作量不大,且時(shí)間足夠,所以就我一個(gè)人完成測(cè)試的大部分工作,當(dāng)然,一部分需要開發(fā)協(xié)助。

測(cè)試方案,就是測(cè)試計(jì)劃的補(bǔ)充和擴(kuò)展。

比如這次性能測(cè)試,我預(yù)計(jì)用一周時(shí)間完成這些測(cè)試工作,設(shè)計(jì)用例、場景建模、準(zhǔn)備測(cè)試數(shù)據(jù)、測(cè)試腳本開發(fā)、環(huán)境搭建等各需要多久時(shí)間,在哪一天甚至是上午還是下午完成這些工作。

三、執(zhí)行前的準(zhǔn)備工作

環(huán)境搭建:測(cè)試環(huán)境由于之前會(huì)員系統(tǒng)也進(jìn)行過性能測(cè)試,測(cè)試環(huán)境搭建這一步工作量不大,開發(fā)很快就配置完成,所以這里不贅述。

場景建模:個(gè)人理解,就是考慮哪些場景下可能存在性能瓶頸,相應(yīng)的設(shè)置對(duì)應(yīng)的測(cè)試腳本和測(cè)試邏輯,以盡可能模擬生產(chǎn)環(huán)境(由于對(duì)業(yè)務(wù)蠻熟悉,這里也不贅述,需要提及的一點(diǎn)是:

    一定要理解、熟悉系統(tǒng)業(yè)務(wù),因?yàn)樾枨蟮漠a(chǎn)生,就是用戶+場景)。

測(cè)試數(shù)據(jù)準(zhǔn)備:測(cè)試數(shù)據(jù)準(zhǔn)備常用的有這兩種方式:將生產(chǎn)數(shù)據(jù)復(fù)制一份過來、開發(fā)腳本預(yù)埋造數(shù)據(jù)(但無論哪種,一定要注意數(shù)據(jù)隔離,防止數(shù)據(jù)污染)。

測(cè)試腳本開發(fā):首先,需要從開發(fā)那里獲取開發(fā)接口文檔和數(shù)據(jù)庫表設(shè)計(jì)文檔。

然后,通過工具或者寫測(cè)試腳本調(diào)試接口,先保證接口可以成功調(diào)用(我用的工具是jmeter+MySQL)。

四、執(zhí)行測(cè)試腳本

在保證接口可以成功調(diào)用之后,先進(jìn)行單接口基準(zhǔn)測(cè)試,即:對(duì)一個(gè)接口進(jìn)行壓力測(cè)試,不斷加壓,直到響應(yīng)時(shí)間達(dá)到或超過指標(biāo),觀察當(dāng)前其并發(fā)數(shù)和TPS。

個(gè)人經(jīng)驗(yàn)是同樣的并發(fā)數(shù),多執(zhí)行幾次,得到一個(gè)平均值或穩(wěn)定值(即TPS和TRT曲線相對(duì)穩(wěn)定的值),并記錄下來。

如下圖:

記錄的目的,可以通過直觀的數(shù)據(jù)變化,得到單個(gè)接口的最大TPS和不同并發(fā)情況下的響應(yīng)時(shí)間變化。

PS:記得前幾天從一本書上看到這樣一句話:80%的性能瓶頸可以通過分析TPS和TRT的數(shù)值變化得到(雖然有點(diǎn)片面,但也不失為一種方法)。

比如按照上圖記錄的數(shù)值變化來看,很明顯領(lǐng)券接口性能極差,這時(shí)候就可以告知開發(fā),通過查看log、檢查代碼、SQL語句等方法來查詢?cè)颍ó?dāng)然個(gè)人能力足夠的話,這些可以自己來做)。

五、監(jiān)控調(diào)試

jmeter這個(gè)性能測(cè)試工具本身就用監(jiān)聽器這個(gè)元件提供了一定的監(jiān)聽數(shù)值報(bào)告元件,但畢竟開源工具,其本身的組件功能不夠強(qiáng)大,可以通過下載支持jmeter的增強(qiáng)型功能插件來進(jìn)行監(jiān)控。

jmeter插件下載地址:https:///

下載后可以解壓縮,將plugins-manager.jar放入jmeter安裝目錄lib/exe,然后重啟jmeter即可。

可以通過點(diǎn)擊下圖圈出來的按鈕檢驗(yàn)是否成功安裝:

無論是對(duì)服務(wù)器資源使用率還是測(cè)試數(shù)據(jù)報(bào)表生成,甚至TPS、TRT等的監(jiān)聽,該插件都提供了組件支持,具體的使用方法請(qǐng)自行尋找。。。

所謂的監(jiān)控調(diào)試,就是一個(gè)不斷調(diào)整重復(fù)的過程,這個(gè)需要根據(jù)性能測(cè)試的目的,應(yīng)用領(lǐng)域去判斷具體如何執(zhí)行。。。

六、最終報(bào)告

根據(jù)上面的幾個(gè)步驟,得到測(cè)試結(jié)果,分析系統(tǒng)存在的瓶頸,然后采用各種方法提出解決方案或優(yōu)化建議,最后對(duì)本次性能測(cè)試進(jìn)行一個(gè)完整的總結(jié),這樣,一次性能測(cè)試就完成了。

在整個(gè)過程中,費(fèi)時(shí)較長一般是在測(cè)試數(shù)據(jù)準(zhǔn)備和測(cè)試執(zhí)行、監(jiān)控調(diào)優(yōu)階段。

文章來源:網(wǎng)絡(luò)  版權(quán)歸原作者所有

上文內(nèi)容不用于商業(yè)目的,如涉及知識(shí)產(chǎn)權(quán)問題,請(qǐng)權(quán)利人聯(lián)系小編,我們將立即處理

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多