JMeter基础

JMeter基础,第1张

函数用来给JMeter属性设置值,默认返回值为空字符串,所以函数在任何地方被调用都是有效的

该属性函数返回JMeter属性的值,如果找不到属性值且没有提供默认值,则直接返回属性名。在提供了默认值时就不需要写函数名(这里是指重用此函数计算的值的引用名,即变量名),它的参数可以设置为null,此时该变量将直接被忽略。

举例:

这是简化版的属性函数,旨在为用户在命令行使用属性定义。它不像__property函数那样有可以存值的变量,并且如果没有提供默认值,侧假定默认给1,原因是它对常见的测试变量(如循环、线程数、ramp up等)有效

varsget函数用来获取属性值

propsput函数用来设置属性值

propsget函数用来获取属性值

propsget函数用来移除属性

Summary是按整个场景的时间来做平均的,最大最小值,也是从整个场景中取出来的。

(1) 平均响应时间:事物全部响应时间做平均计算

(2) 90%响应时间:将事物全部响应时间进行排序,然后求90%数据中的最大值,即是说事务所有运行次数中,90%落在这个时间内,10%在这个时间之外,

举例1:假设有10个响应时间,1s,2s,3s,4s,5s,6s,7s,8s,9s,10s,则90%的响应时间是9s。有10%个响应时间大于它,90%的时间小于或等于它

举例2:假设有10个响应时间,123,154,159,166,178,185,195,205,215,225,则90%的响应时间是215。有10%个响应时间大于它,90%的时间小于或等于它

        在日常接口测试中,总会遇到获取token值的情况,比如通过登录接口返回的token,使用此token作为凭据访问系统里面的其它接口,这时我们就需要获取到登录接口返回的值,把token信息提取出来,然后保存起来给别的请求使用,或者做一些其它处理。

下面的这个例子讲解,如何通过正则表达式的方法获取参数值,首先需要先了解下相关语法,之后在进行实践。下示例中,要求提取登录接口的token、userid、username、unixtime等信息,介绍用正则表达式的方式来实现,提取一个,一次提取多个。

一、正则表达式语法

()括起来的部分就是要提取的

匹配任何字符串

+ 一次或多次

? 在找到第一个匹配项后停止

例如想匹配web页面的如下部分,<title> 正则表达式例子</title> 提取语法:<title> (+)</title>

使用场景:第二个请求参数中需要加入第一个请求的返回值时;通过正则提取器可以提取第一个请求返回值中指定的字段信息并赋值在第二个接口里面。

小技巧,想要看到变量,取样器—Debug Sampler 调试器,会把变量打印出来。

二、实践例子

第一步:例如有以下登录接口,在第一个接口成功之后,需要提取token、userid等参数

第二步:在需要提取数据的接口 右击 --》添加 --》后置处理器 --》正则表达式提取器

第三步:用正则提取:响应结果种单个字段值,设置变量名,设置左右边界(+)表示匹配任意长度

第四步:查看正则表达式,提取的相关变量值

定义3个虚拟用户组,分别进行连接,发布,订阅 *** 作。

连接者:虚拟用户数=10, 发起10个到服务器的背景连接,每2秒钟发一次心跳请求,15秒后断连。

发布者:虚拟用户数=5,每隔一秒发送一条32字节的随机串,带时间戳,循环10次结束。

订阅者:虚拟用户数=2,接收相应话题上的消息,每隔一秒输出采样间隔里接收到的消息统计,循环10次结束。

在JMeter中运行该场景,15秒钟左右运行结束。可以在测试结果树中看到每个 *** 作的详细信息。表格视图的"Sample Time"列出了 *** 作花费的时间(毫秒)。由于这次测试在本地,并发用户数很少,所以连接、消息发送、接收时延都很短。您可以指向实际的MQTT服务器,模拟更大的并发用户数。

1、复制mysql-connector-java-517-binjar(可点击该链接下载)至\apache-jmeter-213\lib目录下。

2、 进入\apache-jmeter-213\bin目录双击运行jmeterbat 启动JMeter,

3、右击测试计划新增线程组,

4、新建线程组完成之后,可修改线程组名称,本来设置线程数为10,运行时间10秒,循环1次,因此总共请求10次

备注:Ramp-Up Period不可设置过短,否则会在初始给服务器过大的压力,也不能设置过短,否则第一个线程完成之后,第二个线程还没启动,建议Ramp-Up Period=总线程数。

5、新建JDBC连接池

配置信息如下:

Database URL: jdbc:mysql://服务器地址:3306/数据库名

JDBC Driver class:数据库JDBC驱动类名,commysqljdbcDriver

Username:数据库连接用户名

Password:数据库连接密码

6、新建JDBC请求

7、在Variable Name输入同JDBC Connection Configuration相同连接池名,本例输入如下查询语句。

8、添加断言

9、添加断言结果

10、添加图形结果

11、添加察看结果树

12、添加聚合报告

13、选中mysql线程组,点击绿色箭头运行按钮

14、察看报告

以上就是关于JMeter基础全部的内容,包括:JMeter基础、jmeter从excel批量读取参数值极简攻略、Jmeter几种常用函数用法 __setProperty,__P,vars,props等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9326666.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存