Jmeter前置处理器实战:「BeanShell 预处理程序」参数化手机号码身份证号

Posted 顾三殇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jmeter前置处理器实战:「BeanShell 预处理程序」参数化手机号码身份证号相关的知识,希望对你有一定的参考价值。

一、实战场景

业务场景:常见业务管理系统测试中,个人信息档案的自动化批量生成,需要贴近实际进行入参,在姓名、 手机号码身份证号、生日、性别中,这五者有着各自的行业规范格式,而生日、性别有时是由身份证号默认带出数据的信息,数据输入规范:

· 姓名: “姓”在百家姓中任意取一,“名”任意,均为对字符串的随机取值,字数为 2 ~ 18 字
· 手机号码: 11 位整数,“手机号码”规范格式,比如 188、1

JMeter—前置处理器

参考《全栈性能测试修炼宝典JMeter实战》第六章 JMeter 元件详解中第四节前置处理器
前置处理器用来处理请求前的一些准备工作,比如参数设置、环境变变量设置等

技术分享图片


一、BeanShell PreProcessor
  是以BeanShell为工具语言来为请求作准备工作
  参数说明:
    Reset bsh interpreter beford each call:是否重新构造interpreter,即是否重新初始化
    Paraneters:BeanShell 脚本中的变量初始化时可以在这里指定值,这里接受变量与字符串数组,如果是字符串数组两个元素之间用空格隔开
    ScriptFile——File Name:指定运行的BeanShell脚本
    Script:编写BeanShell脚本,通过BeanShell可以访问ctx、vars、props、prev、sample、log。其中通过ctx可以访问Jmeter运行时状态,比如线程数和线程状态;通过vars访问定义的变量;通过props访问运行时设置;通过prev访问前一个取样器结果;通过sample访问当前取样器;通过log写日志


二、JSR223 PreProcessor
  使用方法与BeanShell类似

 

三、BSF PreProcessor
  使用方法与BeanShell类似


四、Regular User Parameter
  正则表达式用户变量,用来引用前一次正则表达式提取器提取的相应数据


五、用户参数
  利用元件进行参数设置,再取样器中进行参数化
  比如创建用户,用户名不能重复,但要使用多线程进行测试,这时可以用到

六、JDBC PreProcessor
  在请求运行之前进行数据库操作
  比如在修改用户信息,需要知道用户在修改前的信息,可以使用JDBC PreProcessor进行查询 


七、HTML链接解析器
  解析从服务器得到的HTML响应,并从中提取链接和表单,使用perl型的正则表达式来寻求匹配项


八、HTTP URL重写修饰符
  使用URL重写来保存会话ID用于替代Cookies的Web应用系统

 

以上是关于Jmeter前置处理器实战:「BeanShell 预处理程序」参数化手机号码身份证号的主要内容,如果未能解决你的问题,请参考以下文章

Jmeter_前置处理器

JMeter使用BeanShell断言

JMeter使用BeanShell断言

JMeter使用BeanShell断言

JMeter-BeanShell预处理程序和BeanShell后置处理程序的应用

Jmeter之BeanShell变量使用讲解