JMeter-用户参数

前言

一个系统有两个接口,一个注册、一个登录,注册用户类型为手机号码。现想在jmeter中实现,用一个随机手机号码进行注册,然后再用这个随机号码登录。

我们可以使用随机函数生成手机号码进行注册,但是生成的这个手机号怎么用呢?

方法一、使用关联,在注册接口上增加一个后置处理器,提取注册的手机号出来,然后再用于登录及之后的接口

方法二、把注册的信息写入文件,然后再从文件中提取手机号码,然后再用于登录及之后的接口

今天,我给小伙伴们讲一下第三种方法,就是添加前置处理器-用户参数,一个用户参数的变量,接收随机函数生成的号码,注册和登录等接口,都引用这个变量。

实现思路:

(1)jmeter的变量,其实分为:属性和变量两种。

(2)属性又分两种,一种是系统预定义属性(包括系统属性和jmeter属性),一种是用户自定义属性。

(3)系统预定义属性,在jmeter启动前,已经定义,启动时获取;用户自定义属性,是在运行过程中通过命令或函数动态定义属性名称和值。 

实现步骤:

一:先用一个用户参数的变量接收随机函数生成的手机号码。

二:在注册接口中,使用用户参数的变量进行注册。

三:在注册接口增加一个后置处理器-Beanshell后置处理器写上 ${__setProperty(自定义属性名称,${用户参数的变量名称},)} 。

四:在登录的http请求参数mobliephone的值中填写入${__P(自定义属性名称,)}。

注:setProperty是jmeter的设置属性函数,P是jmeter获取属性函数

五:添加察看结果数,查看返回结果,注册接口随机生成的手机号与登录接口的手机号保持一致,完美实现了注册之后,就用该用户进行登录的操作。

 方法解答:

用户参数,每次使用,都会动态调用,计算一次,所以每次都会生成新值赋给变量,在注册接口中,就用这个变量值,用完之后,把变量值赋给一个自定义属性。

这样,jmeter的属性就会动态更新属性及其值,然后在登录接口中,获取属性的值,因为前面已经更新了自定义属性的值,所以登录接口获取到值也更新为对应的值。

从而实现了注册接口的手机号与登录手机号一致。

小伙伴们,你们都学会了吗,学会了就赶紧运用在工作中吧!

posted @ 2020-02-22 18:16  一步一脚印丶  阅读(2049)  评论(0编辑  收藏  举报