用jmeter进行多用户并发压力测试

测试要求以下,多用户同时登录web应用程序,并进行操做,查看在多用户操做下,程序的performence。刚好,jemter下有个CSV Data Set Config,它用来设定一组参数,以便在向程序发出请求时,传入参数。在进行压力测试之前,应先将操做过程记录下来。jmeter有个http prox serve,用它能够进行记录。但有个更好的软件,即badboy,以下图,web

badboy记录操做过程

只要输入请求地址,即可将全部的操用步骤记录下来,导出jmeter的script,jmeter导入这个sccript就是一个工程了,能够在里面对其进行修改参数和添加新的断言,监听器等。多用户的参数文件就在这里设。并发

 csv

右键单击选择配置器,一一输入参数文件地址(便jmeter能找到的路径),变量名称(参数引用时就是引用这个变量,用${变量名}进行引用,),参数分隔符(在参数文件中,参数以一行为一组参数,其间可用;,函数

等隔开,如是tab,用/t),recycle on EOF(文件结束后是否要循环),stop thread on EOF(文件结束是否停止线程)。通常来说,若有n组参数,线程数就设为n,以下图,测试

 

可在操做中添加一些断言,看参数是否用上了,好比一个登录界面,传入用户名和密码,这个请求完成后,可对response页面内容进行断言。url

 

 

在使用Jemeter作压力测试的时候,每每须要参数化用户名,密码以到达到多用户使用不一样的用户名密码登陆的目的.这个时候咱们就可使用CSV Data Set Config实现参数化登陆:spa

首先经过Test Plan或者Thread Group的Add->Config Element->CSV Data Set Config添加线程



 如下是CSV Data Set Config各个参数的简要说明:orm

  • FileName:即同目录下csv文件的名称
  • File Encoding: 默认为ANSI
  • Varible Names: 定义文本文件中的参数名,参数之间逗号分隔.定义后可在脚本在以Shell变量的一样的方式引用
  • Allow Quoated data: 双引号相关
  • Recycle on EOF: 设置为True后,容许循环取值
  • Stop Thread on EOF: 当Recycle on EOF为false而且Stop Thread on EOF为true,则读完csv文件中的记录后,中止运行
  • Sharing Mode: 设置是否线程共享

设置2个线程去运行,结果以下:blog



成功读取CSV中的参数.
图片

最后,咱们需知Jmeter还有以下方式能够进行参数化:

    • User Defined Varibles: 通常对不须要改变的参数进行
    • User Parameters:
    • 经过系统函数: Options->Function Helper Dialog,经过本身输入参数值,点击"Generate" 按钮产生
相关文章
相关标签/搜索