美文网首页
Jmeter读取本地txt/csv文件作为请求参数,实现接口自动

Jmeter读取本地txt/csv文件作为请求参数,实现接口自动

作者: 莫依痕 | 来源:发表于2018-02-13 17:39 被阅读0次

    前提1:找到apache-jmeter-3.2->bin,点击Jmeter.bat启动Jmeter

    jmeter启动.png
    前提2:如果响应数据里返回中文,在jmeter.properties中进行编码设置
    jmeter.properties编码设置.png
    1、在测试计划中新建线程组,我这里测试具体项目的一个接口,所以在线程组加了HTTP信息头管理器(一般设置AuthorizationContent-Type即可)、CSV Data Set ConfigHTTP请求和查看结果树
    测试计划组成.png
    2、新建一个txt文件,输入具体参数,用英文“,”隔开(Delimiter里可以随意设置英文分割符号进行分割,但是Delimiter设置什么分割符,txt里的元素一定要用那个分割符号),一定不要写列名
    txt转csv.png
    3、CSV Data Set Config里的filename写具体csv的本地地址,csv里一行有多少个值,Variable Names就写几个值,多个参数具体用“,”隔开
    CSV Data Set Config.png

    4、HTTP请求里的Body内容,需要用本地的值作为参数,按照下面方式书写,格式是"${variable name}",如果请求值有中文,记得Content encoding里要输入UTF-8,否则会乱码

    [{"user_id":"${userid}","user_name":"${username}"}]
    
    HTTP请求设置.png
    5、csv里有几行内容,线程组的个数就设置多少,否则无法保证csv的所有内容都运行。可以通过查看结果树看请求和响应数据
    查看结果树.png

    遇到的坑:

    1、HTTP请求中误勾选Use multipart/form-data for POST

    请求数据是一串ID,误以为是编码问题,排查了jmeter.properties编码设置和HTTP请求中Content encoding设置,排除乱码问题。后来发现是勾选了Use multipart/form-data for POST,找不到数据引发的问题

    form-data for POST.png
    请求数据报错.png
    2、请求参数写在Parameters里

    post请求的参数有3种实现形式(Parameters、Body Data、Files Upload),有些请求内容的数据格式是json格式的,不能把参数写在用Parameters,识别不了,导致响应数据有误

    Parameters里写请求参数.png
    响应数据有误.png
    3、txt里的内容有用“,”隔开的,Delimiter里建议设置成其他的分割符,否则完整的数据会被截断。

    相关文章

      网友评论

          本文标题:Jmeter读取本地txt/csv文件作为请求参数,实现接口自动

          本文链接:https://www.haomeiwen.com/subject/kvgjtftx.html