Jmeter讀取excel表中用例數據實現接口壓測


        傳統的接口測試,都是在接口中手動輸入不同用例准備的多種場景參數數據,一遍一遍的輸入來執行多個不同的用例,但是現在利用excel表格准備各種類型的數據,使用Jmeter中Jmeter CSV Data Set Config參數化實現可設置的、一次性的讀取excel表中多個或者全部用例設計的數據,一次性看到多個用例數據運行出相應的結果。這樣可以避免了每次去更改參數值的煩惱,也減少修改參數出錯的機率。這樣大大減少了測試人員的工作量,並且也提高了接口測試用例的執行效率。Jmeter 讀取excel數據使用的方法是使用Jmeter CSV Data Set Config參數化,使用方法如下:

一、數據准備

       准備數據文件,一般以 .csv,.dat 等結尾的文件,數據之間的分隔符可用 ,或者 tab。
其中,將excel文件保存成csv格式后,jmeter讀取后返回的數據總是出現亂碼問題,以下就是解決的辦法:先制作一個excel表格,導出存為.csv格式的文件。讀取txt中的數據也是類似方法。

二.使用CSV Data Set Config參數化將csv里面的數據讀取

以下是CSV Data Set Config各個參數使用說明:
(1)Filename:數據文件的路徑。
(2)Delimiter:數據之間的分隔符可用 ,或者 tab。
(3)Allow Quoated data: 雙引號相關,例:如果參數中需包含,或者”等,該項可以選擇True。
(4)Recycle on EOF: 設置為True后,允許循環取值
(5)Stop Thread EOF: 當Recycle on EOF為false並且Stop Thread EOF 為true,則讀完csv文件中的記錄后,停止運行,線程數及執行次數無效。
(6)Sharing Mode:共享模式: 
  • All threads:所有線程,所有線程循環取值,線程1取第一行,線程二取下一行。
  • Current thread group:當前線程組,各個線程組分別循環取值。
  • Current thread:當前線程,該測試計划內的所有線程都取第一行。

三、參數的應用

本實例是以居民端H5的XXXX接口為例,體驗一下Jmeter通過獲取excel中的用例數據運行一堆用例的過程,體驗一下數據驅動的執行方式:

1.先准備測試數據,准備了多條不同的測試用例的數據

2.使用benshell將數據獲得

3.下面是添加一個Debug sampler(里面什么也不用,設置保持默認)

Debug Sampler介紹:
  使用Jmeter開發腳本時,難免需要調試,這時可以使用Jmeter的Debug Sampler,它有三個選項:JMeter properties,JMeter variables,System properties:
(1)JMeter properties和System properties:通常都選false,這兩個就是JMeter和系統的屬性,在Jmeter的bin的jmeter.properties中定義,一般都不會變。
(2)JMeter variables:這個是我們自已定義的變量,定義的方式有如下這些:
  a) 選中 測試計划(Test plan),在右邊的面板上添加User Defined Variables
  b) 選中線程組,右鍵選擇 配置元件( config element)-->User Defined Variables
  c) 通過后置處理器生成的變量
  d)使用csv參數化的變量

4.添加一個http post接口,傳參需是json格式,因此要先配置http信息頭管理器

 

5.添加線程組的察看結果樹

        根據設置的執行用例數目,比如:100,則執行excel表中相應的100條用例數據,並輸出對應的結果,也可以進行對應的壓測。此時會把excel中准備的數據前100條用例都會執行一遍,如果進行壓測時,則可以把循環的測試次數設置的足夠大,比如:1000,查看聚合報告,就可以看到接口測試壓力測試的情況了很方便。
  (1)察看結果樹  

(2)聚合報告。對接口遍歷100個用例的壓測,其運行得到的聚合報告圖,如下:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM