• Jmeter系列之参数化


    VOL 132

    08

    2020-06

    今天距2021年206天

    这是ITester软件测试小栈第132次推文

    点击上方蓝字“ITester软件测试小栈“关注我,每周一五早上 07:30准时推送。

    微信公众号后台回复“资源测试工具包”领取测试资源,回复“21天打卡”一起学习成长,打怪升级。

    本文2023字,阅读约需6分钟

    在上一篇:Jmeter系列之常用组件(二),主要介绍正则表达式提取器调式取样器(debug sampler)响应断言HTTP消息头管理的应用场景及实战。

    以下主要介绍JMeter的三种参数化方式:用户参数、CSV Data Set Config CSV函数助手。

    用户参数

    当使用JMeter进行测试时,测试数据的准备是一项重要的工作。若要求每次迭代的数据不一样时,则需进行参数化,然后从参数化的文件中来读取测试数据。

    线程组,右键依次选择添加--》前置处理器--》用户参数。

    用户参数设置如下:

    创建HTTP请求,处理登录接口请求。

    注意,因为设置了两组登录账号,所以,需要在线程组里设置线程数为2。

    添加察看结果树,运行结果如下:


    CSV Data Set Config

    CSV Data Set Config可以从指定的数据文件中一行一行的读取内容,按照一定的格式拆分并赋值给变量,采样器引用变量即可。

    线程组,右键,依次选择添加--》配置元件--》CSV Data Set Config。

    CSV Data Set Config界面介绍:

    • Filename:参数文件名

    • File encoding:参数文件的编码格式。推荐选择 UTF-8。

    • Variable Names:对应参数文件每列的变量名。

    • Delimiter:参数文件分隔符。与参数文件中的分隔符保持一致即可。

    • Allow quoted data?:是否允许引用数据。默认设置为 false。

    • Recycle on EOF?:是否循环读取参数文件内容。默认设置为 true。设置为 true 时,当已经读取完参数文件内的测试用例数据,还需要继续获取用例数据时,此时会循环读取参数文件数据;设置为 false 时,若已至文件末尾,则不再继续读取测试数据。通常在 线程组的线程数 * 线程组的循环次数 > 参数文件行数时,才需要将此项设置为 true。

    • Sotp thread on EOF?:当读取到参数文件末尾时,是否停止读取线程,默认为 false。

      若为 true,则在读取到参数文件行末尾时,终止参数文件读取线程。例如:线程组的线程数 * 线程组的循环次数 = 10,参数文件行数 = 7,那么将在第 8 次开始停止线程。

      若为 false,此时线程会继续读取,但是会请求错误,因此时读取的数据为 EOF。以上同例,自第 8 次开始,线程的请求数据为 EOF。

    • Sharing mode:共享模式,即参数文件变量作用域。主要有以下几种方式:

        All threads:当前测试计划中的所有线程组中的所有的线程均有效,默认。

        Current thread group:当前的线程组中的线程有效。

        Current thread:当前线程有效。

    在本地新建一个userinfo.csv文件,用于存放账号信息。

    CSV Data Set Config配置如下:

    登录请求配置如下:

    线程组设置线程数为2,创建察看结果树,运行结果如下:

    CSV函数助手

    利用函数从文件里面读取数据,然后引用变量。

    菜单栏,依次选择工具--》函数助手对话框--》CSVRead。

    CSVRead配置如下:

    在登录请求里,粘贴函数字符串。

    线程组设置线程数为2,创建察看结果树,运行结果如下:

    总结:本文主要介绍Jmeter的三种参数化方式:用户参数、CSV Data Set Config、 CSV函数助手。

    今日问题:在接口自动化测试中,你用什么方式管理接口测试用例? 

    (欢迎在下方留言区发表你的看法)

    留言福利:

    抽取截止至6月14日留言点赞最多的一位幸运er,可获得:漫画算法:小灰的算法之旅(Python篇)

    (幸运er名单将在下周一推文的置顶留言处公布)

    以上


    That‘s all

    更多系列文章

    敬请期待

    ITester软件测试小栈

    往期内容宠幸

    1.Python接口自动化-接口基础(一)


    2.Python接口自动化-接口基础(二)


    3.Python接口自动化-requests模块之get请求


    4.Python接口自动化-requests模块之post请求


    5.Python接口自动化之cookie、session应用


    6.Python接口自动化之Token详解及应用


    7.Python接口自动化之requests请求封装


    8.Python接口自动化之pymysql数据库操作


    9.Python接口自动化之logging日志


    10.Python接口自动化之logging封装及实战

    想获取更多最新干货内容

    快来星标 置顶 关注

    每周一、三、五 07:30见

    <<  滑动查看下一张图片  >>


     后台 回复"资源"取干货

    回复"21天打卡"一起打怪升级

    测试交流Q群:727998947

    点亮一下在看,你更好看

  • 相关阅读:
    Apache Shiro 使用手册(二)Shiro 认证
    jdk 环境变量
    IDEA 相关整理
    mysql 相关命令
    hbase 迁库移库步骤
    Linux 常用指令整理
    springboot aop + logback + 统一异常处理 打印日志
    查看jar包的jdk版本
    maven 将jar包推送到自己本机的maven库
    jar包内的文件导出的注意点
  • 原文地址:https://www.cnblogs.com/ITester520/p/13203285.html
Copyright © 2020-2023  润新知