zoukankan      html  css  js  c++  java
  • jmeter 参数化

    一:使用配置元件csv data set config参数化

    1.filename :文件名,点击浏览按钮,打开要从中取值的文件
    2.file encoding:文件编码方式
    3.variable names:参数名称,以上图中文件举例,假设需要取出文件中的姓名和年龄,这里就要填写 name,age(名称随便取,但是要用逗号隔开)
    4.ignore first line:是否忽略第一行,以上图文件举例,第一行不是我要取的参数值,因此该项选为true
    5.delimiter:上图文件中,各参数是以空格分开的,这里就填写空格就好了
    6.allow quoted data:取到的参数里面是否允许有分隔符。以上图文件为例,如果选择true,则第一次迭代取到的参数为 (Claire)和(21 测试工程师)
    7.recycle on eof:是否循环取值。假设设置迭代次数为4次并且不循环取值,此时第四次迭代是取不到参数值的。我们可以通过debug sample来观察一下
    8.stop thread on eof:是配合recycle on eof=false使用的,当设置循环取值,迭代次数又大于参数个数时,此项为true,则停止测试;此项为false,则 不停止测试,但是参数是取不到的(如上面图中所示,参数为<EOF>
    9.sharing mode:是指参数文件共享模式。
    all thread:参数文件对所有线程共享,该测试计划下的所有线程组之间都可共享
    current thread group:只对当前线程组的线程共享
    current thread:仅当前线程可用
     
    如果在其他sample中要用到上面所取到的参数,使用方法为${name},${age}----与设置的variable names一致
    二、使用函数参数化
     
    random string length:产生的字符串长度,比如我要生成一个长度为100的产品描述,这里 填写00就可以了
    chars to use for random string generation:相当于种子。生成的字符串中,每个字符都从这个种子里面取得
    name of variable in which to store the result:给生成的字符串取个名字,作者是为了产生产品说明,因此取名为proDes,如果填写了该项,则参数可以在debug sample中看到(如下图)
     
    注意:上面实例中用到的正则表达式提取器也是参数化的一种方式。比如,为了安全,每次请求/admin/login页面时,服务端代码都会新生成一个requesttoken返回,之后的请求都要带上该值。此时就可以用后置处理器中的正则表达式提取将该值提取出来,方便后面sample发送请求时带上该参数。
     
    有些系统产生的ID是类似这样的: 【f525183a-ca6e-4267-b3de-700b141185d8】。这种情况下我们可以使用函数来生成该ID。
    三:用户参数
    这里的用户代表的是线程。
    上面实例中,添加了参数username。假设设置线程个数为2(暂且叫做thread1和thread2)。sample中使用该参数(${username},${password}),之后运行脚本,thread1取到的username就是用户_1里面设置的值;thread2取到的username就是用户_2里面设置的值。
    感觉与csv data set config有些类似
     
    四:Variables From CSV File
    jmeter官网下载该组件,解压后放到jmeter的安装路径下即可(笔者是放在这里的-----E:apache-jmeter-3.3libext),之后重启jmeter即可使用该插件(如下图)
     
    先设置该元件的参数
    csv file:文件地址
    variable prefix:参数前缀。通过上图示例:该前缀结合文件中的第一列产生了参数名
    separator:分隔符
    skip initial lines:跳过行数。假设输入1,则产生的参数中,就不会有younth_username了
    store variable also insystem properties:是否将参数存储为系统属性(在变量很多时就不要勾选了)
    之后点击test CSV file就可以看到结果了
     
    该组件与之前的CSV data set config 的差别是可以一次性参数化多个数据
  • 相关阅读:
    MyEclipse 启动报错:'Building workspace' has encountered a problem解决方法
    MyEclipse快捷键大全
    Maven学习 (四) 使用Nexus搭建Maven私服
    PHP 语法
    PHP 在Win下的安装
    PHP 简介
    【CMS】安装CMS
    【CMS】DedeCMS Error: (PHP 5.3 and above) Please set 'request_order' ini value to include C,G and P (recommended: 'CGP') in php.ini
    mysqladmin: connect to server at 'localhost' failed
    解压版MySQL安装后初始化root密码
  • 原文地址:https://www.cnblogs.com/shen-qiang/p/9777674.html
Copyright © 2011-2022 走看看