JMeter學習筆記(六) 文件下載接口測試


  本次測試的是文件下載接口,文件是PDF文檔,步驟如下:

1、通過jmeter的錄制功能,獲取了文件下載接口的地址和參數,和其他的HTTP請求一樣的配置

 

2、執行此接口后,察看結果樹,點擊下載接口的結果,可以看到響應結果像是亂碼,其實這些都是這個文檔的內容,並且由於文檔較大,察看響應數據時jmeter會短暫卡死

---優化:由於jmeter返回的是字節流,當數據量太大時,會發現jmeter完全卡住,為了防止這種情況發生,可以在查看結果樹勾選僅日志錯誤,讓其不顯示,提高性能

 

3、如果下載接口是通的,可以通過把下載接口的響應數據"保存到文件"這種方式來查看文件,這樣查詢結果時直接到本地查看文件就行

添加方法:線程組右鍵添加 -> 監聽器 -> 保存響應到文件(或者是Sampler直接添加也行)

配置字段:

  1)Save Failed Responses only:只保存失敗的響應;

  2)Save Successful Responses only:只保存成功的響應;

  3)Don't add number to prefix:不添加數字到文件名前綴;

  4)Don't add suffix:不添加文件后綴,即擴展名(注意:默認情況下,jmeter會根據服務器返回的結果自動生成適合類型的文件。)

  5)Add timestamp:添加時間戳到文件前綴 ;

  6)Minimum Length of sequence number:添加 數字時的最小值,不填默認從1開始。

注意:在不勾選任何1)和2)時,會將響應成功和響應失敗的都保存到文件中。添加在測試計划下時,該監聽器默認的會為所有的sampler分別建立一個單獨的文件來保存響應結果,如果只想保存某個請求的返回結果時,只要把監聽器拖動到某個請求的作用域下,就只會保存這個請求的響應。

 

優化:加上時間戳,歷史文件就不會被覆蓋掉

 

 

4、下載的文件,可以通過添加 后置處理器 BeanShell PostProcessor 保存到本地

代碼(換一個文件地址和名稱就行):

import java.io.*;
byte[] result = prev.getResponseData(); //這個是獲取到請求返回的數據,prev是獲取上個請求的返回
String file_name = "D:/Program Files/apache-jmeter-3.3/bin/result/下載文件/180607144641.pdf"; //代表存放文件的位置和文件名
File file = new File(file_name);
FileOutputStream out = new FileOutputStream(file);
out.write(result);
out.close();

 

5、如果要判斷文件是否下載完整,可以通過添加斷言來判斷

 


免責聲明!

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



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