zoukankan      html  css  js  c++  java
  • Jmeter使用csv文件读取测试数据

    最近有同事在测试过程中遇到需要造批量测试数据的问题,这些数据往往是同一种单据,但是单据的内容不同,如果手工创建就比较费时费力。那我们用jmeter的csv文件来读取测试数据就完美解决了这个问题。

    我们今天使用Jmeter5.1.1调用博客园的开放API来举例,接口信息如下:

    获取新闻内容
    
    Url: http://wcf.open.cnblogs.com/news/item/{CONTENTID}
    
    HTTP Method: GET
    

    csv文件准备

    1. 新建一个文本文档,然后把后缀.txt改成.csv,使用notepad或者记事本打开(这里使用的是notepad)
    2. 将我们的批量测试数据 CONTENTID(新闻Id)写进来

    添加CSV数据文件设置

    1. 添加CSV数据文件设置:打开jmeter -> 右键测试计划 -> 添加配置元件 -> CSV 数据文件设置

    创建HTTP请求

    1. 创建HTTP请求:打开Jmeter -> 右键测试计划 -> 添加-线程-线程组 -> 右键线程组 -> 添加-取样器-HTTP请求

    2. 添加查看结果树:右键HTTP请求 -> 添加-监听器-查看结果树
    3. 将上面的接口信息复制到HTTP请求中,一切准备就绪如下图:

    运行并查看结果

    1. 设置线程数和循环次数后启动(这里我设置的是1个线程循环15次):

    2. 查看结果树,发现的CONTENTID已经是CSV数据文件中的数据了,响应数据就是对应Id的内容。

    最后,我们回到开始的问题,造大量的不同内容的相同单据。我们使用CSV文件来存不同的内容,使用jmeter来循环调用创建数据的接口,这样就不用手动再去创建单据了,既省时又省力。

    CSV文件设置参数说明:

    参数 说明
    文件名 你的CSV数据文件的路径
    文件编码 例如可以是UTF-8。那么jmeter就会以UTF-8读取文件
    变量名称 以逗号分隔的名称列表,它与CSV文件中的列相匹配。
    忽略首行 如果第一行是列名而不是测试数据,就选择True忽略掉列名
    分隔符 默认为','也可以设置为其他值(建议使用默认)
    是否允许带引号 默认为False,如果测试数据中带有引号则设置为Ture
    遇到文件结束符再次循环 默认为True,意思读完最后一行在回来读取第一行
    遇到文件结束符停止线程 读完最后一行停止线程
    线程共享模式 定义如何在并发线程之间分配值
  • 相关阅读:
    Java学习开篇
    《我的姐姐》
    世上本无事,庸人自扰之
    这48小时
    补觉
    淡定
    es java api 设置index mapping 报错 mapping source must be pairs of fieldnames and properties definition.
    java mongodb groupby分组查询
    linux 常用命令
    mongodb too many users are authenticated
  • 原文地址:https://www.cnblogs.com/ezrealli/p/11260938.html
Copyright © 2011-2022 走看看