Jmeter录制方式分三种,分别是:使用Badboy录制、Jmeter自带的代理服务器录制和手工录制,今天先介绍前两种录制方法。

Badboy录制

Badboy是用C++开发的动态应用测试工具, 其拥有强大的屏幕录制和回放功能, 同时提供图形结果分析功能。Badboy录制的脚本可以导出成.jmx后缀的格式, jmx正是Jmeter脚本保存的格式, 其实质是

一个XML格式的文件。

Badboy的录制方式有两种: 一种是Request方式, 一种是Navigation方式, 通过工具栏的 'N' 按钮切换; Request方式是模拟浏览器发送表单信息到服务器, 每一个资源都将作为请求发送; Navigation方

式是记录用户鼠标的操作动作, 回放时模拟界面点击, 类似于UI自动化测试工具selenium。

因Jmeter对脚本的需要, 我们使用Request方式进行录制生成jmx格式脚本。

Badboy下载地址:http://www.badboy.com.au/,安装方式很简单,因为是exe程序,双击安装即可。

安装成功打开会出现如下界面:

使用Badboy录制非常简单,首先新建Test Suite,在框中输入要录制的网址,并点击右侧的绿色按钮,即可:

点击绿色按钮后就会有如下所示页面,并录制登录操作,做相应操作就会被录制:

录制完成后,会出现如下所示界面,点击红色按钮即停止:

将文件导出到jmeter,如下操作:

保存到自己所建的文件夹中:

然后在jmeter软件中打开,操作如下:

添加进来后,就会出现如下结果,这就是所录制好的脚本。

脚本录制成功,但不代表该脚本就可运行,还需要对脚本进行调试,比如关联、请求头设置等操作。

Jmeter自带的代理服务器录制

它的原理:jmeter设置为代理服务器,类似fiddler一样的抓包完成脚本的录制

可分为如下步骤:

1、  Jmeter新建一个线程组—录制控制器

2、  设置jmeter代理  工作台—非测试元件—代理服务器

3、  端口 8080 , 目标控制器选择录制控制器 ,勾选了允许正则表达式   并在排除模式中添加   .*\.(bmp|css|js|gif|ico|jp?g|png|swf|woff)

4、  启动代理服务器

5、  在IE浏览器中设置代理   127.0.0.1  8080

6、  用谷歌浏览器操作网站,会有自动录制的效果

先看第一步:

Jmeter新建一个线程组—录制控制器

第二步:

设置jmeter代理  工作台—非测试元件—代理服务器

第三步:

端口 8080 , 目标控制器选择录制控制器 ,勾选了允许正则表达式   并在排除模式中添加   .*\.(bmp|css|js|gif|ico|jp?g|png|swf|woff)

第四步:

启动代理服务器,此处只是个提示信息,点击确定即可

第五步:

在IE浏览器中设置代理   127.0.0.1  8080,此处要填127.0.0.1,因为是要以本机做为代理服务器,不然会出错,设置好后,需要重启服务,才能生效。

第六步:

用谷歌浏览器操作网站,会有自动录制的效果

脚本录制成功,但不代表该脚本就可运行,还需要对脚本进行调试,比如关联、请求头设置等操作。

Jmeter脚本录制方法(一)——分别使用Badboy录制和Jmeter自带的代理服务器录制的更多相关文章

  1. Jmeter脚本录制方法(一)分别使用Badboy录制和Jmeter自带的代理服务器录制

    Jmeter录制方式分三种,分别是:使用Badboy录制.Jmeter自带的代理服务器录制和手工录制,今天先介绍前两种录制方法. Badboy录制 Badboy是用C++开发的动态应用测试工具, 其拥 ...

  2. jmeter下载安装---已有jmeter脚本使用方法

    一.jmeter下载安装 1.下载地址:http://jmeter.apache.org/download_jmeter.cgi 下载下来为一个压缩包,解压即可 解压后目录结构如下: 2.jmeter ...

  3. Jmeter压测基础(二)——Badboy功能、Jmeter参数化、检查点、集合点、动态关联、图形监控

    Badboy 以下稍微介绍一下badboy的部分功能: 1.Record;play(badboy打开后默认是recording状态) 2.Assertion(检查点/断言) 3.Variable: t ...

  4. 【转】JMeter脚本的参数化

    JMeter脚本的参数化 当你利用Badboy将你的测试脚本录制完毕后,接下来就是脚本的调试工作了.在我看来,调试应该包括有以下几个方面:1.根据测试场景对脚本进行必要的修改:2.脚本参数化:3.添加 ...

  5. jemeter学习-badboy录制与代理服务器录制

    一 基本元素的介绍 1. 添加测试计划 2.添加线程组 线程数---并发数,模拟多少个用户并发 Ramp-up periods ----我们要在多少秒之内进行多少用户的并发 循环次数---可以选择一次 ...

  6. 使用命令行方式运行 JMeter 脚本

    For non-interactive testing, you may choose to run JMeter without the GUI. To do so, use the followi ...

  7. fiddler4自动生成jmeter脚本

    接口.性能测试任务当遇到从浏览器或移动app自己抓包的情况出现时就变得巨苦逼了,苦在哪里?苦在需要通过抓包工具抓报文,需要通过抓包报文梳理业务逻辑.需要将梳理的逻辑编写成脚本.最最苦的情况是,自己抓包 ...

  8. ant 执行jmeter脚本

    环境准备 1.jdk版本:java version "1.8.0_201" 2.jmeter版本:5.0 3.ant版本:Apache Ant(TM) version 1.10.5 ...

  9. ant构建Jmeter脚本的build文件配置(build.xml)

    使用此构建文件可自动发送邮件  代码如下: <?xml version="1.0" encoding="UTF8"?> <project na ...

随机推荐

  1. window的设置属性

    1.windowAnimationStyle 用于设置一组window动画的引用style资源,window的动画属性由R.styleable.WindowAnimation定义. Winow动画类属 ...

  2. WPF DEV实现手风琴效果

    说明 最近用WPF+DevExpress做项目时,需要做一个类似手风琴的效果,效果的界面如下.因为没有现成的控件,需要自定义模板,所以写了一个Demo和大家分享,项目中可以根据实际情况使用.如果你用不 ...

  3. select 标签选中 jquery

    网上很多错误 的[text ='xxx'] ,我晕. option 标签没有 text 属性.所以[]选取不到. 正确的: $("#yearCardTypeState option:cont ...

  4. 图论中DFS与BFS的区别、用法、详解…

    DFS与BFS的区别.用法.详解? 写在最前的三点: 1.所谓图的遍历就是按照某种次序访问图的每一顶点一次仅且一次. 2.实现bfs和dfs都需要解决的一个问题就是如何存储图.一般有两种方法:邻接矩阵 ...

  5. 转: 【Java并发编程】之三:线程挂起、恢复与终止的正确方法(含代码)

    转载请注明出处:http://blog.csdn.net/ns_code/article/details/17095733 挂起和恢复线程     Thread 的API中包含两个被淘汰的方法,它们用 ...

  6. 半个月学习的it内容

    1  基本头部标签: 1 head: HEAD里面主要放一些有关网页设置的相关语句-->2编码格式: 设置网页的字符集编码格式:GB2312,简体中文的编码格式 GBK:扩展的国标码,比国标码多 ...

  7. 集美大学网络1413第十一次作业成绩(团队七) -- Alpha冲刺之事后诸葛亮

    题目 团队作业7--Alpha冲刺之事后诸葛亮 团队作业7成绩  团队/分值 设想和目标 计划 资源 变更管理 设计/实现 测试/发布 团队角色. 管理.合作 总结 讨论照片 团队成员 角色.贡献 总 ...

  8. 团队作业8——第二次项目冲刺(Beta阶段)--5.24 forth day

    团队作业8--第二次项目冲刺(Beta阶段)--5.24 forth day Day four: 会议照片 项目进展 Beta冲刺的第四天,以下是今天具体任务安排: 队员 昨天已完成的任务 今日计划完 ...

  9. 201521123099 《Java程序设计》第八周学习总结

    1. 本周学习总结 2. 书面作业 本次作业题集集合 List中指定元素的删除(题目4-1) 1.1 实验总结 老师上课解释的还有私下问同学大概能懂.主要理解到一点在删除List中元素时要考虑元素删除 ...

  10. 201521123012 《Java程序设计》第五周学习总结

    ##1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 答: 1.2 可选:使用常规方法总结其他上课内容. 答:匿名内部类:将一个类的定义放在另一个类的内部.一般是 **new ...