美文网首页
Jmeter 提取请求及响应结果并保存到本地文件

Jmeter 提取请求及响应结果并保存到本地文件

作者: _帆帆历险记 | 来源:发表于2019-05-06 11:48 被阅读0次

    1.已有一个登录的HTTP请求-登录2

    2.启动,查看结果树

    计划提取请求头 Connection 的 keep-alive 字段

    响应主体:userId 的9786字段

    以及响应码 200

    3.正则表达式提取器,提取Connection

    正则表达式提取器,提取userId

    边界提取器,提取响应代码

    4.添加beanshell后置处理程序,写入脚本

    FileWriter fstream = new FileWriter("E://jmeter//pk1.csv", true);

    BufferedWriter out = new BufferedWriter(fstream);

    out.write( vars.get("Connection")+","+"userId" + "," + vars.get("userId") +","+"code" + "," + vars.get("returnCode")+",");

    out.write( vars.get("name"));

    out.write(System.getProperty("line.separator"));

    out.close();

    fstream.close(); 

    其中:

    ①   System.getProperty("line.separator")

          这也是换行符,功能和"\n"是一致的,但是此种写法屏蔽了 Windows和Linux的区别 ,更保险一些.

          https://blog.csdn.net/zhpengfei0915/article/details/20614639

    out.write("code" + "," + vars.get("returnCode")+"\n");

    +"\n" :也是换行的效果

    ②  "," 体现在csv文档中就是向右移一个单元格

    5.启动请求

    在目标路径产生文档,打开文档,存在提取的字段

    (若已存在文档,该代码是可以续写文档的,不会覆盖之前的记录)

    6.可在线程组设置线程数。(即http请求运行几次)

    7.遇到的问题:

    ① 数据一直写入失败,结果是【要检查的响应字段】选错了,像提取响应码 【200】应该选 信息头

       写入失败会导致文件被占用的情况(文件无法删除)

    ② 这边的username参数,是由csv文件传参的 Jmeter小试牛刀-参数化

    要在代码里获取,应获取name,而不是username

    ③ "userId": 9786 后有换行符,空格,} 等等

    用边界提取器提取,右边界直接输   } 

    结果会导致提取值自带了换行,导致后一个值换行显示

    之后又尝试右边界输入 \n 等,结果取不到值。。

    用正则愉快的取到值了

    (虽然边界提取器适合小白,但正则还是要会一点。。两个都有其占优势的使用场景)

    参考教程: https://blog.csdn.net/nielinqi520/article/details/80310806

    相关文章

      网友评论

          本文标题:Jmeter 提取请求及响应结果并保存到本地文件

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