jmeter性能测试报告_用 JMeter 做接口测试的优劣浅析
? 2018年由軟件質(zhì)量報(bào)道做的調(diào)查報(bào)告表明,受調(diào)查的測(cè)試人員中約有40.67%的人使用JMeter作為接口測(cè)試的自動(dòng)化測(cè)試工具(排在商業(yè)化或者開源工具中的第一),剩下的為Postman(28%),以及SoapUI(17.33%)。不過值得關(guān)注的是另外還有44.13%的采用了自研工具,說明可能現(xiàn)有的開源工具不能滿足需求,更多的采用了自己研發(fā)的方式。那今天我們就來看看JMeter做接口測(cè)試的優(yōu)點(diǎn)和不足,以及怎么解決這個(gè)不足。
JMeter接口測(cè)試的優(yōu)勢(shì)
1)JMeter比較輕量級(jí),并且開源,社區(qū)接受度高,比較容易入門。
2)JMeter提供了BeanShell編程能力,可以寫出比較靈活的測(cè)試腳本。
3)JMeter的社區(qū)比較完善,提供了比較豐富的協(xié)議支持。比如除了支持常見的HTTP協(xié)議之外,還可以直接通過JDBC Sampler連接數(shù)據(jù)庫(kù),把期望的測(cè)試結(jié)果存入數(shù)據(jù)庫(kù)中,直接對(duì)測(cè)試結(jié)果進(jìn)行驗(yàn)證。在編寫測(cè)試腳本過程中,可以將不同的協(xié)議調(diào)用使用同一個(gè)腳本進(jìn)行組合調(diào)用,寫出比較復(fù)雜的測(cè)試用例。
4)JMeter提供了比較高級(jí)的擴(kuò)展能力,允許自己定義和擴(kuò)展新的協(xié)議支持,比如擴(kuò)展支持阿里提供的Dubbo協(xié)議的JMeter插件等。
5)JMeter提供了HTML測(cè)試報(bào)告和Jenkins集成的能力,比較方便地實(shí)現(xiàn)一些基礎(chǔ)的持續(xù)測(cè)試。
JMeter接口測(cè)試的不足
JMeter作為接口測(cè)試方案大概有以下的一些問題:
1)腳本的靈活性。雖然JMeter提供了一定的BeanShell編程能力和自定義協(xié)議的擴(kuò)展能力,可以讓腳本開發(fā)人員有一定的靈活性,受制于JMeter本身的限制,與開發(fā)人員直接使用語(yǔ)言進(jìn)行接口測(cè)試相比,靈活性還是相對(duì)不足。
2)報(bào)告的能力。JMeter提供了HTML報(bào)告,但是JMeter本身的測(cè)試報(bào)告主要用于性能測(cè)試,反映的更多是性能測(cè)試層面的結(jié)果。而且配置過程比較復(fù)雜,在團(tuán)隊(duì)成員分享報(bào)告等方面比較麻煩。
3)持續(xù)集成。利用第三方的Jenkins插件、Ant和Maven等,能與JMeter進(jìn)行一些基本的持續(xù)測(cè)試集成,但是對(duì)于完全自動(dòng)化所需的測(cè)試環(huán)境的管理等功能支持不足,配置過程略嫌麻煩。
4)測(cè)試腳本和測(cè)試結(jié)果的管理:腳本和結(jié)果基本都是本地管理,無法做到在線管理。
優(yōu)化的JMeter接口測(cè)試方案
理想的基于JMeter的接口測(cè)試方案能夠彌補(bǔ)上述劣勢(shì),包括需要從團(tuán)隊(duì)和工具的層面補(bǔ)上短板。
JMeter腳本的靈活性不足的問題可以通過團(tuán)隊(duì)成員的合理搭配來解決。JMeter提供了較為完善的擴(kuò)展機(jī)制,通過擴(kuò)展可以支持不同的協(xié)議和函數(shù),這些擴(kuò)展處理的插件和函數(shù)能讓編寫測(cè)試腳本變得更加簡(jiǎn)單。JMeter的擴(kuò)展需要對(duì)Java比較了解,并且掌握J(rèn)Meter的擴(kuò)展機(jī)制。JMeter的擴(kuò)展開發(fā)是一次性的,在完成插件的開發(fā)之后,由腳本編寫人員基于擴(kuò)展的插件和函數(shù)進(jìn)行腳本編寫,從而快速完成接口測(cè)試。因此比較好的團(tuán)隊(duì)搭配為:
1)一個(gè)、或者多個(gè)了解JMeter擴(kuò)展的測(cè)試開發(fā)人員,主要負(fù)責(zé)相關(guān)擴(kuò)展功能的實(shí)現(xiàn),以及報(bào)告的定義和持續(xù)集成相關(guān)的一些開發(fā)工作。
2)JMeter測(cè)試腳本編寫人員,主要負(fù)責(zé)基于JMeter內(nèi)置和自定義擴(kuò)展插件的腳本開發(fā),如果發(fā)現(xiàn)有時(shí)候腳本開發(fā)過程中不方便的地方,提交開發(fā)需求由測(cè)試開發(fā)人員對(duì)JMeter進(jìn)行擴(kuò)展實(shí)現(xiàn)。
該方案剩下的所需的測(cè)試報(bào)告、持續(xù)測(cè)試集成、測(cè)試腳本和結(jié)果的管理需要額外的一些定制工作后才能夠滿足需求。
推薦閱讀點(diǎn)擊閱讀?利用Jmeter做一個(gè)簡(jiǎn)單的性能測(cè)試并進(jìn)行參數(shù)化設(shè)置
點(diǎn)擊閱讀?Jmeter 集合點(diǎn)詳細(xì)講解
點(diǎn)擊閱讀?用Jmeter做分布式測(cè)試的一些技術(shù)點(diǎn)……
點(diǎn)擊閱讀?性能測(cè)試中級(jí)探索——Jmeter Beanshell
點(diǎn)擊閱讀?用 JMeter 測(cè)試 MySQL 數(shù)據(jù)庫(kù)
上文內(nèi)容不用于商業(yè)目的,如涉及知識(shí)產(chǎn)權(quán)問題,請(qǐng)聯(lián)系小編(021-64471599-8017)。
戳愛我請(qǐng)給我好看!總結(jié)
以上是生活随笔為你收集整理的jmeter性能测试报告_用 JMeter 做接口测试的优劣浅析的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python mysql操作封装库_py
- 下一篇: c语言不会可以学好java吗_不会C语言