小白学JMeter:如何开始简单的WEB压力测试(二)

并发请求与参数化

在本小节中我们将通过一个实例演示如何并发多个POST请求,并且从CSV文件中读取POST请求的参数值。

1. 设置并发数与Ramp-up时间

上一节已经通过Thread Group配置了一个模拟用户发送HTTP请求的测试计划,通过Thread Group的参数设置我们可以模拟并发多个用户执行同样的测试计划:

Thread Group并发参数设置
通过增加Threads,可以增加并发的用户数。通过调整Ramp-up Period,可以控制并发请求发起的时间。如上图例子所示,在10秒内并发5个用户,即每隔2秒增加一个用户。一般一开始Ramp-up时间与Thread保持一致,即每1秒增加一个用户,然后再根据实际情况进行微调。

关于Ramp-up Period的具体解释可以参见官网手册的介绍:

The ramp-up period tells JMeter how long to take to "ramp-up" to the full number of threads chosen. If 10 threads are used, and the ramp-up period is 100 seconds, then JMeter will take 100 seconds to get all 10 threads up and running. Each thread will start 10 (100/10) seconds after the previous thread was begun. If there are 30 threads and a ramp-up period of 120 seconds, then each successive thread will be delayed by 4 seconds.
Ramp-up needs to be long enough to avoid too large a work-load at the start of a test, and short enough that the last threads start running before the first ones finish (unless one wants that to happen).
Start with Ramp-up = number of threads and adjust up or down as needed.

2. 从CSV文件读取参数

前面演示了如何发起GET请求。接下来在这里会演示如何发起多个POST请求,并且每个POST请求的参数都来自于CSV文件中。

  • 在CSV文件中保存参数值
    创建一个CSV文件(如c:\input.csv),输入如下示例数据


    CSV文件

    该CSV文件中共有2列,每列用逗号区分

  • JMeter中创建CSV Data Set Config

    按如下方式在Thread Group中创建CSV Data Set Config:
    创建CSV Data Set Config

    指定从CSV文件获取参数,指定参数名字(第一列对应变量名为eng_value, 第二列对应变量名为chn_value),默认分隔符即为逗号:
    配置CSV Data Set Config
  • JMeter中修改HTTP Request
    修改请求为POST,并设置POST请求的参数名与参数值。其中eng, chn为POST请求的参数名,而后面的${eng_value}, ${chn_value}则为相应的参数值,而这些值是从CSV文件中读取出来的(上面进行CSV Data Set Config时,就设置了每一列对应的Varaiable Names)


    修改HTTP Request
  • 更新PutsReq网站的响应脚本

    可以通过PutsReq网站提供的Response Builder,来自定义对POST请求的处理方式。
    csv4.png
    判断如果POST请求带的chn和eng参数都不为空时,就输出一段话包括这两个参数,以便我们检查所传参数是否正确。简单将脚本修改一下,更新完成后记得点一下Update按钮。
  • JMeter发起并发请求并检查结果
    调整好Thread Group的并发数和Ramp-up时间后,就可以发起并发请求并查看结果了。


    JMeter中查看Request
    JMeter中查看Response

    如果请求数起过了CSV文件提供的行数时,如第6个请求,则会重新使用CSV文件第一行的数据,以此类推。


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. JMeter 测试计划 测试计划 使用JMeter进行测试的起点,是其它JMeter测试元件的容器。 线程组...
    alamZheng阅读 3,560评论 0 7
  • 1 Jmeter安装配置 使用Jmeter前首先要安装JDK,配置JDK环境变量。Jmeter不需要安装,下载后...
    茶小汐阅读 3,128评论 0 8
  • 一、基本概念 1.测试计划是使用 JMeter 进行测试的起点,它是其它 JMeter 测试元件的容器。 2.线程...
    Leo_0626阅读 2,425评论 0 10
  • 互联网压力性能Badboy.Jmeterhttp://itopic.org/jmeter-http-tcp.htm...
    燕京博士阅读 3,141评论 0 20
  • 听了很多关于 “三观不合,不要结婚” “和三观不合的人做朋友,很累” “三观不合,气死人” ……等等 听着听着,好...
    smile_轰轰阅读 1,571评论 2 1

友情链接更多精彩内容