热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

jmeter自定义参数_Jmeter如何参数化?常见的几种参数化方法总结!

如果想要掌握Jmeter的相关操作,那么前提是你一定要会参数化,那什么是参数化呢?参数化:简单的来理解一下,我

如果想要掌握Jmeter的相关操作,那么前提是你一定要会参数化,那什么是参数化呢?

3236b7964c8c04aea359f4df13ef160e.png

参数化:简单的来理解一下,我们录制了一个脚本,这个脚本中有登录操作,需要输入用户名和密码,假如系统不允许相同的用户名和密码同时登录,或者想更好的模拟多个用户来登录系统。这个时候就需要对用户名和密码进行参数化,使每个虚拟用户都使用不同的用户名和密码进行访问。

说一下我的理解,就是将脚本中的某些输入值使用参数来代替,在下次使用的时候,只需要修改输入值即可。

Jmeter与loadrunner参数化的区别:

1、 jmeter参数文件的第一行没有列名称

2、 这里要注意的是参数文件的编码,可以使用记事本另存为就可以修改该编码(编码问题在使用CSV Data Set Config参数化时要求的比较严格)

3、 Jmeter的参数化设置没有LoadRunner做的出色,它是依赖于线程设置的(只有CSV Data Set Config参数化方法才有)

还是听不懂没关系,看了下面的你就会了,常见的参数化方法有如下几种:

一、CSV Data Set Config:CSV数据控件

使用场景:适合参数范围比较大的时候,可以方便用户随时修改参数数据。使用最多的就是参数化用户名和密码登录系统。

4fdb41c0b255080d05c70b3f381bd58d.png

准备txt文档参数数据

ac0616ebdfef45df4d8515173d91cc09.png

参考接口:http://api.nnzhp.cn/api/user/login

3b3075430e79ff33603015b85ff92359.png

通过Debug Sampler来查看获取的参数是否正确

5a98aa7928f9b06c9badc136bad2cea0.png

二、函数助手

使用场景:jmeter自带的函数处理,比如:随机数,可用于固定字符+随机数,修改传入参数的值,函数助手的底层都是java封装的方法。

6d98f341dcf867913e76601c4406df17.png
a9105af6f45474c0e4f2a2f96c940c68.png

三、用户自定义变量

使用场景:一般可以适用于在测试计划中不经常变化的参数设置,如host、端口号、url等;而且用户自定义变量是在配置元件中的。

bd4d6bde3cccc9aeae44633a4bd06756.png
8f29522768ab2cba8c1494eb662d99b1.png

结果如下所示:

f2bc7a8b3018b9e0b9aaa2cce50fc899.png
b21946d8853484a45abdb1e6955b4185.png

四、用户参数

使用场景:适合参数取值范围很小的时候使用 一般会将登录的用户账号和密码作为用户参数,用户参数是在前置处理器模块中的

363bc3cbf07e5f2e6ed22349d9af7f33.png
6759442c6ab13a11318fe9ca8fcb4f5b.png

请求结果如下:

fba49e5d20f22193ef193683773baa81.png

五、关联获取参数- 正则/json提取(个人角度)

常见的参数化是四种,个人理解通过正则和 json 提取也是一种提取返回结果作为

参数的一种功能,常见的使用场景有:用户登录时,获取返回结果 token,作为下一个

请求的参数,这里要注意取参数的顺序,否则可能会出现还没提取出参数的值,其他请

求却已经引用了参数的情况。

47d45732458a0f9fe0e6b5fe92b76271.png

参考接口:http://api.nnzhp.cn/api/user/login 获取用户的 COOKIE,并将 COOKIE 作为参数请求下一个连接。这样的原因是,能保证接下去的操作是在当前用户登录后操作的。

3961acce7d1061200a38817d1df4cd5a.png

通过 json 提取器获取对应的 COOKIEs 值,并添加在下一个请求的 http COOKIE 管理器中。

a16f5b156f9d4e74fa1c210b4f0c2169.png
10e5f677292f92cc3aba7b0f72899452.png

通过 debug sampler 来查看取值结果,说明我们已经取到对应的 COOKIE 值了。

3f09851be570471c4c960e543ffca3c0.png

看到这里,应该知道如何进行参数化了吧,学会了参数化,我们使用 jmeter 就会越

加方便啦!

总结:

在用到jmeter工具时,无论做接口测试还是性能测试,参数化都是一个必须掌握且非常有用的知识点。

我是谁?

我是一名从事了多年软件测试的老测试员,今年年初我花了一个月整理了一份最适合2020年学习的软件测试学习干货,可以送给每一位对软件测试感兴趣的小伙伴,想要获取的可以关注我的头条号并在后台私信我:【测试】,即可免费获取。




推荐阅读
  • 本文介绍如何使用 Angular 6 的 HttpClient 模块来获取 HTTP 响应头,包括代码示例和常见问题的解决方案。 ... [详细]
  • 基于Node.js、Express、MongoDB和Socket.io的实时聊天应用开发
    本文详细介绍了使用Node.js、Express、MongoDB和Socket.io构建的实时聊天应用程序。涵盖项目结构、技术栈选择及关键依赖项的配置。 ... [详细]
  • 简化报表生成:EasyReport工具的全面解析
    本文详细介绍了EasyReport,一个易于使用的开源Web报表工具。该工具支持Hadoop、HBase及多种关系型数据库,能够将SQL查询结果转换为HTML表格,并提供Excel导出、图表显示和表头冻结等功能。 ... [详细]
  • 实用正则表达式有哪些
    小编给大家分享一下实用正则表达式有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下 ... [详细]
  • 本文详细介绍了在XAMPP环境中如何修改Apache和MySQL的默认端口号,并确保WordPress能够正常访问。同时,提供了针对Go语言社区和Golang开发者的相关建议。 ... [详细]
  • 本文介绍了如何使用JavaScript的Fetch API与Express服务器进行交互,涵盖了GET、POST、PUT和DELETE请求的实现,并展示了如何处理JSON响应。 ... [详细]
  • 本文介绍如何从JSON格式的文件中提取数据并将其分配给Bash脚本中的变量。我们将探讨具体的命令和工具,帮助你高效地完成这一任务。 ... [详细]
  • 深入解析Spring启动过程
    本文详细介绍了Spring框架的启动流程,帮助开发者理解其内部机制。通过具体示例和代码片段,解释了Bean定义、工厂类、读取器以及条件评估等关键概念,使读者能够更全面地掌握Spring的初始化过程。 ... [详细]
  • ssm框架整合及工程分层1.先创建一个新的project1.1配置pom.xml ... [详细]
  • 本文详细介绍了 phpMyAdmin 的安装与配置方法,适用于多个版本的 phpMyAdmin。通过本教程,您将掌握从下载到部署的完整流程,并了解如何根据不同的环境进行必要的配置调整。 ... [详细]
  • 本文详细介绍了如何在云服务器上配置Nginx、Tomcat、JDK和MySQL。涵盖从下载、安装到配置的完整步骤,帮助读者快速搭建Java Web开发环境。 ... [详细]
  • 优化SQL Server批量数据插入存储过程的实现
    本文介绍了一种改进的SQL Server存储过程,用于生成批量插入语句。该方法不仅提高了性能,还支持单行和多行模式,适用于SQL Server 2005及以上版本。 ... [详细]
  • SpringMVC RestTemplate的几种请求调用(转)
    SpringMVCRestTemplate的几种请求调用(转),Go语言社区,Golang程序员人脉社 ... [详细]
  • 配置PHPStudy环境并使用DVWA进行Web安全测试
    本文详细介绍了如何在PHPStudy环境下配置DVWA( Damn Vulnerable Web Application ),并利用该平台进行SQL注入和XSS攻击的练习。通过此过程,读者可以熟悉常见的Web漏洞及其利用方法。 ... [详细]
  • 本文详细介绍了如何解压并安装MySQL集群压缩包,创建用户和组,初始化数据库,配置环境变量,并启动相关服务。此外,还提供了详细的命令行操作步骤和常见问题的解决方案。 ... [详细]
author-avatar
快乐xin_yi
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有