微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

2021年1月26日jmeter 录制脚本

了解需求:@H_404_8@ 1、性能测试过程中,我们经常需要对流程化的业务进行性能测试,其中涉及到很多接口,这时候问开发拿接口和参数就会降低工作效率,直接用jmeter的录制功能就能提高工作效率@H_404_8@ 2、开发接口案例中,我们也经常会碰到一些上传、下载、导入等等一些接口功能,这些脚本如果直接问开发拿接口和参数也不方便,直接录制效率也会更高@H_404_8@ 3、百度网盘共享了一份录制模版,常用的测试元件都已经添加,排除模式也添加了常见的不需要的请求,录制模板下载方式见文章末尾介绍

  • 一、配置浏览器代理

    1. 打开IE浏览器,然后点击工具》Internet选项》@H_404_8@

    2. 点击连接页签,在点击局域网设置按钮@H_404_8@

    3. 在代理服务器一栏勾选为LAN使用代理服务器,输入地址:localhost ,端口你要设置的代理端口,本文设置为8888,然后点击确定按钮@H_404_8@

  • 二、开始录制脚本

    1. 首先我们配置下界面语言,认为英文,修改下jmeter的bin目录下的jmeter.properties文件37行#language=en 改成language=zh_CN,则每次打开jmeter都显示中文界面,如下@H_404_8@

      @H_404_8@

      @H_404_8@ 录制过程中,可能录制的请求参数会显示乱码,也需要在jmeter.properties文件添加sampleresult.default.encoding=UTF-8 ,如下图所示@H_404_8@

    2. 双击运行bin目录下的jmeter.bat文件打开jmeter,首先需要在测试计划右键点击测试计划》添加》非测试元件》HTTP代理服务器@H_404_8@

    3. 端口中输入ie中配置的端口,分组选择put each group in a new transaction controller(在每个新组创建一个新的事务控制器,便于区分录制的请求功能)@H_404_8@

    4. 右键点击测试计划》添加》Threads》线程组添加线程组@H_404_8@

    5. 右键点击线程组添加》逻辑控制器》录制控制器,添加录制控制器@H_404_8@

    6. 然后点击HTTP代理服务器,点击启动按钮,开启录制功能,此时你打开浏览器,登陆你要测试的系统,进行的操作都会被录制下@H_404_8@

    7. 脚本录制如下,删除掉不要的脚本,然后进行调试@H_404_8@

    8. 录制过程中,可能出现界面提示"您的连接不是私密连接",实际是需要更新jmeter的crt证书@H_404_8@

    9. 打开IE浏览器,点击工具》Internet选项》内容》证书》受信任的根证书颁发机构》导入》下一步@H_404_8@

    10. 点击浏览按钮,选择bin目录下的crt证书,然点击下一步,一直点击下一步,直到点击完成@H_404_8@

      @H_404_8@

      @H_404_8@

      @H_404_8@

      @H_404_8@

    11. 此时,重新打开报错的百度页面,正常显示,录制成功@H_404_8@

  • 三、配置录制脚本排除和包含模式

实际录制脚本过程中,可能会录制到很多不需要的网站请求,或者一些不需要的js、css之类的请求,这时我们就可以通过排除和包含模式进行过滤请求,这样录制的脚本就会更加简洁,提高开发案例效率

** 设置排除模式的正则表达式:**@H_404_8@ 1、排除.js结尾类型的请求

.*\.js

@H_404_8@ 2、如果需要排除更多类型,使用正则语法,添加即可,如下所示,

(?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|eot|otf|ttf|mp4|woff|woff2|do|query)
(?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|eot|otf|ttf|mp4|woff|woff2|do|query)[\?;].*

3、有时候录制的脚本需要排除比如mongodb结尾的请求,如下图@H_404_8@

@H_404_8@ 正则表达式需要另起一行,如下所示,表示接口地址以mongodb结尾的都排除

.*mongodb

@H_404_8@ ** 设置包含模式的正则表达式:**@H_404_8@ 1、只录制www.baidu.com域名的请求

.*www\.baidu\.com.*

@H_404_8@ 2、如果需要录制多个域名的请求,只要用正则|连接即可,如下所示

.*www\.baidu\.com.*|.*www\.google\.com.*

3、这样录制的请求就只有谷歌和百度的请求,其它网站的请求都会被过滤掉@H_404_8@

@H_404_8@

  • ** 四、调试脚本**
    1. 添加debug sample用来调试,右键点击线程组添加>Sample》Debug Sample@H_404_8@

    2. 添加查看结构树,右键点击线程组》监听器》察看结果树@H_404_8@

    3. 点击启动按钮,就可以在察看结果树中看到调取的变量是否成功@H_404_8@

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐