使用Jmeter進行http接口測試的詳細流程
1、jmeter-http接口測試腳本
jmeter進行http接口測試的主要步驟(1.添加線程組 2.添加http請求 3.在http請求中寫入接口的URL,路徑,請求方式,參數(shù) 4.添加查看結(jié)果樹 5.調(diào)用接口,查看返回值)
針對接口添加header在如下途徑添加:
jmeter做http接口測試添加cookie:
2、jmeter-webservice腳本
進行webservice測試的一般步驟
1、在soapui中新建已經(jīng)soap項目,導入wsdl地址,獲取到請求報文、SOAPAction和請求url(在soapui的raw中能找到)
2、打開jmeter新建一個線程組
3、新建一個SOAP/XML-RPC Request
4、把url、soapaction和請求報文寫到soaprequest中5、調(diào)用接口、查看返回值)
3、jmeter-參數(shù)化
參數(shù)化的作用:調(diào)用接口入?yún)r。有時要求參數(shù)經(jīng)常變化,如果每次去修改就會變得很繁瑣,這時候就需要把經(jīng)常變化的值改變?yōu)樘崆熬庉嫼玫奈臋n或函數(shù)中,便于調(diào)用時使用不同的值。
Jmeter參數(shù)化的方式有三種:
1)用戶定義的變量(這種就是為了方便管理參數(shù),只能有一個值,比如說ip地址不經(jīng)常變化的)。
在線程組中添加一個用戶定義的變量,然后寫key和value就可以了,key就是這個參數(shù)的名稱,也就是你在腳本里面取的值,value就是具體值了。在取參數(shù)化的值的時候,使用${name}這樣去取值,name就是你取的變量名稱。
在腳本中獲取參數(shù)化的值
2)函數(shù)生成器(函數(shù)生成器可以參照一定的規(guī)則生成數(shù)據(jù),這樣的比如說生成一些隨機數(shù))。
函數(shù)助手的話,可以按照規(guī)則生成一些參數(shù),比如說隨機數(shù)取當前時間,最常用的就是這兩種。
隨機數(shù)__Random,可以在你指定的一個范圍內(nèi)取隨機值
取當前時間__time,如果在有一些需要傳時間的情況下可以使用,日期格式是:yyyy-MM-dd HH:mm:ss 年-月-日-小時:分鐘:秒
取唯一id,__UUID,這個就是每次會生成一個隨機的uuid,都是唯一的。
利用函數(shù)助手可以按照規(guī)則生成一些參數(shù)。
3)從文件中讀取(文件讀取就是事先寫好一些數(shù)據(jù),然后從文件中讀取,這樣的話,比如說登錄接口,賬號和密碼都是我們事先注冊好的)
從文件中讀取的有3個步驟:
1、讀取文件
2、取文件內(nèi)容里面的參數(shù),給它一個名字
3、使用值(從文件讀取的話,需要在線程組里面添加一個CSV Data Set Config,它就是做前面兩步的操作的)。
4、jmeter斷言
斷言的作用是用來查看返回結(jié)果是否正確,如果正確就代表這個請求的返回值是正確的,如果沒有的話就代表這個請求的結(jié)果和我們預期的不一致,這樣我們就可以通斷言來檢查返回結(jié)果,測試是否通過。
5、jmeter關聯(lián)
關聯(lián)作用是由于后面操作需要用到前面服務器返回的結(jié)果,所以將該值保存?zhèn)鬟f過來以便使用。
Jmeter中的關聯(lián)一般通過正則表達式提取器來完成(如果有特殊的jar包也可)
關聯(lián)的值在其他請求引用時,直接使用${name}即可,name就是你關聯(lián)的時候設置的變量名。
6、jmeter操作數(shù)據(jù)庫mysql
操作數(shù)據(jù)庫的步驟:
1. 導入jdbc的jar包,因為jmeter本身不能直接連接mysql,所以需要導入第三方的jar包,來連接mysql。
2、創(chuàng)建數(shù)據(jù)庫連接配置,mysql的url、端口號、賬號、密碼
3、寫sql,執(zhí)行sql
4、查看結(jié)果
Jmeter導入jdbcjar包
配置mysql連接
(1)添加一個JDBC Connection Configuration
(2)配置mysql連接池的名稱,后面發(fā)sql請求的時候指定連接哪里
(3)數(shù)據(jù)庫的url:jdbc:mysql://192.168.1.116:3307/bugfree?allowMultiQueries=true
(4)數(shù)據(jù)庫驅(qū)動:這里就是指定連接什么類型的數(shù)據(jù)庫,mysql、oracle、SqlServer等等
(5)賬號密碼
Jmeter執(zhí)行sql
查看sql結(jié)果
7、Linux下運行jmeter壓測
我們在做測試的時候,有時候要運行很久,公司用的測試服務器一般都是linux,就可以運行在linux下面,linux下面不能像windows一樣有圖形化界面,那怎么運行腳本呢,就先在windows上把腳本做好,然后在linux下運行即可,linux下運行jmeter是在jmeter的bin目錄下的jmeter.sh這個shell腳本。
sh jmeter.sh -n –t a.jmx -l res.jtl
-n代表以沒有圖形化界面啟動,-t代表后面是測試腳本,a.jmx也就是我們做好的jmeter腳本,-l代表測試結(jié)果 res.jtl就是測試結(jié)果文件,查看結(jié)果的話,在查看結(jié)果樹視圖中導入這個res.jtl就可以查看到測試結(jié)果了
8、jmeter添加負載機
我們在壓測的時候,可能并發(fā)比較大, 一臺機子已經(jīng)啟動不了那么多并發(fā)了,這個時候我們就要使用多臺機子一起來發(fā)壓力,就要添加壓力機,添加壓力機怎么添加呢,首先要在做壓力機的機子上啟動jmeter的代理,然后做為控制機的機子上添加上壓力機的ip即可。
Jmeter的bin目錄下有一個jmeter-server,啟動它即可,windows機子作為壓力機的話,運行jmeter-sever.bat,linux作為壓力機的話,運行jmeter-server。
然后在作為控制機的jmeter配置文件里添加壓力機ip即可,jmeter的配置文件在bin目錄下jmeter.properties,添加壓力機的時候,在配置文件里面找到remote_hosts添加ip,然后重啟jmeter就可以看到遠程壓力機了
jmeter 添加壓力機:
1、先在其他的負載機(另外的電腦)上啟動jmeter-server(jmeter-server.bat windows) (jmeter-server.sh mac、linux)主控機和負載機
2、修改主控機jmeter的配置文件,找到remot_hosts,然后把負載機的ip加入到里面就好了remot_hosts=127.0.0.1,192.168.1.2:1099,192.168.1.3:1099默認jmeter-server的端口號是1099,如果說負載機上的端口號改了,那么你在這里也得改
3、啟動時候要選擇遠程全部運行ps:如果有參數(shù)化文件,那么在負載機同樣的位置上也得有一個參數(shù)化文件。
以上就是使用Jmeter進行http接口測試的詳細流程的詳細內(nèi)容,更多關于Jmeter進行http接口測試的資料請關注腳本之家其它相關文章!
相關文章
eclipse創(chuàng)建項目沒有dynamic web的解決方法
最近上課要用到eclipse,要用到Dynamic web project.但是我下載的版本上沒有.接下來就帶大家了解 eclipse創(chuàng)建項目沒有dynamic web的解決方法,文中有非常詳細的圖文示例,需要的朋友可以參考下2021-06-06IDEA中調(diào)用方法時,如何同步顯示方法的注釋信息
這篇文章主要介紹了IDEA中調(diào)用方法時,如何同步顯示方法的注釋信息問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-03-03Java中try-catch-finally執(zhí)行順序你知道嗎
本文主要介紹了try-catch-finally執(zhí)行順序你知道嗎,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-06-06