场景
使用JMeter实现文件和参数同时上传的Content-Type为multipart/form-data的POST接口。接口入参如下:
解决方法
-
勾选HTTP请求基本信息中的“对post使用multipart/form-data”。
-
配置参数和文件上传页签中的参数。
除文件外的参数在【参数】中设置。
传输的文件在【文件上传】进行设置。添加需要上传文件的信息,包含:文件路径、文件参数名称、文件类型。
-
文件路径:需要上传文件的路径(这里可以使用绝对路径/相对路径,上传的文件名不要用中文,否则请参中的filename会出现乱码)
-
文件参数名称:就是我们前端中获取的name(或者接口文档中的参数名称)
-
文件类型:根据上传的文件类型填写不同的参数值,常见类型:
文件后缀 Mime类型 说明 .flv flv/flv-flash 在线播放 .html或.htm text/html 超文本标记语言文本 .rtf application/rtf RTF文本 .gif image/gif GIF图形 .jpeg或.jpg image/jpeg JPEG图形 .au audio/basic au声音文件 .mid或.midi audio/midi或audio/x-midi MIDI音乐文件 .ra或.ram或.rm audio/x-pn-realaudio RealAudio音乐文件 .mpg或.mpeg或.mp3 video/mpeg MPEG文件 .avi video/x-msvideo AVI文件 .gz application/x-gzip GZIP文件 .tar application/x-tar TAR文件 .exe application/octet-stream 下载文件类型 .rmvb video/vnd.rn-realvideo 在线播放 .txt text/plain 普通文本 .mrp application/octet-stream MRP文件(国内普遍的手机) .ipa application/iphone-package-archive IPA文件(IPHONE) .deb application/x-debian-package-archive DED文件(IPHONE) .apk application/vnd.android.package-archive APK文件(安卓系统) .cab application/vnd.cab-com-archive CAB文件(Windows Mobile) .xap application/x-silverlight-app XAP文件(Windows Phone7) .sis application/vnd.symbian.install-archive SIS文件(symbian平台) .jar application/java-archive JAR文件(jAVA平台手机通用格式) .jad text/vnd.sun.j2me.app-descriptor JAD文件(JAVA平台手机通用格式) .sisx application/vnd.symbian.epoc/x-sisx-app SIS文件(symbian平台)
-
-
在HTTP请求的“高级”页签下选择“Java”的客户端实现方式。
-
注意:HTTP请求头中不需要添加Content-Type为multipart/form-data,否则所有的参数都会被当成文件以二进制形式传输。
-
运行,查看结果。