一、上傳/下載的過程。
上傳的過程就是你把你本地的文件,扔到服務器上的這么一個過程。
下載呢,就是把服務器上的文件拿過來,然后存到你本地的這么一個過程。
總結一下呢,上傳就是你給服務器一文件,下載呢就是你從服務器上拿一文件。
二、jmeter做上傳的腳本。
咱們先把這個過程了解了之后就開始做腳本,上面說了,上傳是一個像服務器發送數據的,一般發送數據用post請求。
三、jmeter下載文件。
3.1 准備工作:
下載文件呢,其實更簡單,就是把一個文件保存到本地就可以,我現在在百度上找了一個圖片的url
3.2 編寫腳本流程
首先添加一個線程組,然后在線程組里面添加一個http請求,因為是獲取數據,所有是get請求,寫好下載的地址
1、添加線程組 :右鍵測試計划,添加-Threads(Users)-線程組;
2、添加一個http請求:右鍵線程組,添加-Sampler-HTTP請求;
3、寫好http請求中的url和路徑;
不過這個是下載腳本,下載的話,有一步是要把文件保存到咱們本地的,這個jmeter沒有現成的東西可以用,就得咱們自己寫beanshell來實現,把文件保存到本地。
當然你如果要寫beanshell的話,你得會它的語法,它就是java寫的。不過也不用愁不會寫java咋整,這個保存文件的是死格式就這么寫,記住就行了,需要下載的時候復制過去就行。
4、添加beanshell,獲取到返回的文件內容,保存到一個文件里面。右鍵線程組,添加-Sampler-BeanShell Sampler,beanshell代碼如下:
import java.io.*; byte[] result = prev.getResponseData(); //這個是獲取到請求返回的數據,prev是獲取上個請求的返回 String file_name = "C:\\Users\\bjniuhanyang\\Desktop\\BaiDu.jpg"; //代表存放文件的位置和文件名 File file = new File(file_name); FileOutputStream out = new FileOutputStream(file); out.write(result); out.close();
5、添加一個查看結果樹,查看接口調用結果。右鍵線程組,添加-監聽器-查看結果樹;
3.3 腳本實例
協議:http
服務器名稱:imgsrc.baidu.com
端口號:80 (提示,端口號默認是就是80,可以不用寫哦)
請求類型:get
路徑:/image/c0%3Dshijue1%2C0%2C0%2C294%2C40/sign=6184d4c1f8d3572c72ef949fe27a0952/10dfa9ec8a1363270985411b9b8fa0ec08fac7aa.jpg
腳本截圖如下:
下面這個是http請求里面的,也就是咱們獲取圖片的
下面這個是beanshell里面的內容,也就是咱們保存文件的操作。
2.4 運行腳本,查看結果
看下面的圖,運行結果,已經可以看到剛才這張圖片了,而且請求都是成功的。
最后在桌面上查看到了該文件