天天看點

Postman和Jmeter進行上傳檔案及壓力測試

Postman和Jmeter進行上傳檔案及壓力測試

postman下載下傳連結:https://www.postman.com/downloads/

Jmeter下載下傳連結:http://jmeter.apache.org/download_jmeter.cgi

flask代碼位址:https://github.com/yy2lyx/FlaskTutorial/tree/master/Flask-7-upload

windows下scoop下載下傳jdk(這裡是由于Jmeter需要):

scoop install ojdkbuild

一. 建構接口的flask服務

其中包含前端表單index.html檔案如下和flask的後端

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>upload</title>
</head>
<body>
    <form action = "/success" method = "post" enctype="multipart/form-data">
        <input type="file" name="file">
        <input type = "submit" value="Upload">
    </form>
</body>
</html>
           

二. Postman的http接口測試

postman分别在header和body中填入下圖:

  • headers中需要填入value:multipart/form-data
Postman和Jmeter進行上傳檔案及壓力測試
  • body 中需要填入key:file(這裡參考index.html檔案中name=“file”),value:eml檔案位址
Postman和Jmeter進行上傳檔案及壓力測試
  • 然後将寫好的儲存在collections當中,并建構tests選項(如果不填入,後面的串行壓力測試無法開始,報錯)
Postman和Jmeter進行上傳檔案及壓力測試
  • 通過collections中選中儲存好的請求,run即可

三. Jmeter的http接口測試

在下載下傳解壓好的jmeter二進制檔案中打開:

apache-jmeter-5.3\bin\jmeter.bat

  • 建立一個線程組,如下圖,包括http請求及監聽
Postman和Jmeter進行上傳檔案及壓力測試
  • 線程中填入線程總數,和全部線程開啟總的時間(這裡由于需要測試并發1小時2萬次通路)
Postman和Jmeter進行上傳檔案及壓力測試
  • 在http請求頁面填入請求的參數
Postman和Jmeter進行上傳檔案及壓力測試
  • http頁面下面不用填Parameters和BodyData,在Files Upload中填入下圖,其中file和上面一緻,而MIME Type需要通路https://www.freeformatter.com/mime-types-list.html,找到其中.eml格式前面的
  • 運作,即可看到并行的接口請求情況

四. 總結

  • 一般的網絡接口測試,功能性測試postman較為好用。
  • 需要測試高并發的情況下,隻能用Jmeter來進行測試,因為postman是串行,而Jmeter是多線程并行測試。

繼續閱讀