🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快
分享一下Jmeter上传文件接口样例
一、总体概览图
二、以下为上传文档接口截图,仅为示例参考
三、Jmeter 脚本截图如下
1. 如果写了全局性 HTTP Header Manager. 设置了一个content-type=application/json.
提交时会报错。
2. Thread Group下的HTTP request里,本打算添加一个新的HTTP Header Manager可以覆盖全局的content-type, 然后再设置成form-data就可以了,后来发现,并不是覆盖的关系,而是添加关系.所以一直会报空指针错误,因为文件找到了但是没有被传上去.
3. 在上传文件的HTTP request sampler下,加一个BeanShell PreProcessor, 将全局的content-type remove掉,就可以了. 脚本:
sampler.getHeaderManager().removeHeaderNamed("Content-Type");
4. 如果接下来的case还想再加回content-type=application/json, BeanShell里面代码:
import org.apache.jmeter.protocol.http.control.Header;
sampler.getHeaderManager().add(new Header("Content-Type","application/json"));
1、上传文件勾选Use multipart/form-data,这是必须勾选的;
2、Parameters查看接口请求参数,填写。
3、files Upload,点击browse,选择文件。
显示FilePath文件名称必须为全路径,否则会报错找不到文件,参数名称写file;mime类必须替填写,此时需要注意类型。
multipart/form-data; boundary=
JSON提取器:
第一行参数名,第二行提取表达式,第三行默认取值范围,最后一行error默认值
注意:参数名,表达式,取值范围,默认值,个数必须一致。
有几个参数名,下方就有几个提取表达式,就有几个取值范围,就有几个错误默认值。
本例中有3个,上下一致对应(红,绿,蓝对应)
import java.text.SimpleDateFormat;
import java.util.Date;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSX");
String time = sdf.format(new Date());
log.info("-----time-------"+time);
vars.put("localtime",time);
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。