Badboy录制
摘要 Badboy是一个强大的工具,被设计用于测试和开发复杂的动态应用。Badboy功能丰富(包括一个捕获/重播接口,强大的压力测试支持,详细的报告、图形)使得测试和开发更加容易。 Badboy是用来录制操作过程的,它录制的结果被jmeter做并发测试的素材使用。Jmeter是apache下的一个完全基于java开发的测试工具,可以很方便的用来进行并发测试。
Badboy提供两个模式的录制:Request(默认模式) 和navigation模式.点击下图N,切换模式,录制的区域是Badboy右半部分--内容控件区。

Step1:输入地址(http://www.baidu.com),点击录制,如上红色录制按钮 (Noted:默认配置下,点击右侧箭头请求时自动触发录制)

Step2 输入Badboy,点击百度一下

Step3 点击Badboy Software Home Page

Step4 Badboy将使用自带内置控件打开新开启的网页,点击Info

Step5 关闭窗体

Step6 再次点击Record,结束录制.

此时请观察上下2图,两个脚本区域的树状面板所展示的录制脚本的表现形式是有很大区别的。
上图为Request模式,下图为Navigation模式,录制同一个操作过程。可以发现,Navigation模式下记录的按钮或link的Text或者ID等,对界面的依赖性较大

Request模式具有如下优点:如果测试的网页模版修改了,不影响脚本的回放.如果需要badboy导出脚本到jmeter进行性能测试,必须选择request模式.
request模式的缺点如下:request模式需要添加大量的断点来检查页面上的item.
**********************************************************************************************************
Navigation模式将会记录网站交互过程中browser中的元素的点击动作.当回放navigation模式脚本时候,不但回放http request,同时badboy会模拟brower中点击动作.
navigation模式的缺点是 :无法使用navigation脚本进行性能测试,因为性能测试引擎运行时候不显示任何用户界面,所以无法执行navigation中模拟点击等动作.
Navigation录制browser的三种元素如下: 1链接点击 2按钮点击 3其他点击,例如引发javascrīpt的操作.当你记录一个点击一个元素,它使用以下逻辑来记录元素名字:
1. 如果它有一个id,然后它将记录的id
2. 如果它有一个惟一名称,它会记录下名字
3. 如果它是一个链接或一个按钮并具有独特并容易识别的文本(比如按钮上的标签),那么它将记录文本和区别其他元素或控件
4. 如果没有其他方法的运用,它将识别元素在浏览器DOM的位置,使用一个JavaScript表达式记录。
总结:选择navigation模式还是request模式,取决于测试的目的,如果仅仅要求测试功能而不关心界面,则request模式无疑为首选.
不过就我使用的感觉来看:
1 当软件的界面趋于稳定,还是使用N方式做回归测试比较方便。Request方式经常会不识别控件,特别是弹出的窗体,尤其对日历控件反应迟钝,比如Oracle ADF控件,报出很多no found的错
2 一定要Badboy预留出记录动作及输入值的时间,同时还要考虑网站的反应速度等因素,所以录制时一定要动作过渡慢一些,动作与动作之间干净利索
3 录完的脚本一定要跑一遍,根据观察跑的过程,再删及补录过程。 (跑脚本的课程将陆续发布)
4 录制过程要减少耦合,测试点的最小单位是Step,假设测试登陆淘宝后,删除购物车的商品,至少应该有3个Step,1 登陆 2 选择购物车 3 删除购物车的商品。这样做的好处是play脚本时,可以选择从step2 开始,而不需要重复登陆
Badboy录制的更多相关文章
- JMeter-使用Badboy录制Web测试脚本
JMeter是纯Java编写的软件功能和性.能测试工具,其录制脚本过于笨拙和复杂.而Badboy是用C++开发的动态应用测试工具,其拥有强大的屏幕录制和回放功能,同时提供图形结果分析功能,刚好弥补了J ...
- badboy录制兼容性有趣测试
badboy录制默认是启动IE浏览器,使用badboy录制脚本时,遇到测试系统对IE浏览器不兼容时,就需要考虑换浏览器,修改为其他浏览器(如firefox.chrome)录制,只需要设置该浏览器为默认 ...
- Jmeter脚本录制方法(一)——分别使用Badboy录制和Jmeter自带的代理服务器录制
Jmeter录制方式分三种,分别是:使用Badboy录制.Jmeter自带的代理服务器录制和手工录制,今天先介绍前两种录制方法. Badboy录制 Badboy是用C++开发的动态应用测试工具, 其拥 ...
- 使用Badboy录制Web脚本 JMeter运行jmx脚本
1.下载JDK 1.1 官网地址:https://www.oracle.com/technetwork/java/javase/downloads/index.html 在官网下载最新版本的JDK 1 ...
- Badboy录制Jmter脚本
提纲 1.特性和用途 2.下载和安装 3.界面介绍 4.录制脚本(注意:badboy默认是打开就开始录制,需要在step双击后进行取消默认设置) 5.添加断言(参数化设置,注意:badboy默认只运行 ...
- 测试工具之Jmeter(使用badboy录制脚本)
前面使用badboy工具时说过,badboy是可以录制Jmeter的测试脚本,这样省去了自己设计测试用例的麻烦 Jmeter主要是一个性能测试工具,不光在web和http,现在扩展很多功能都可以在Jm ...
- JMeter快速入门之Badboy录制
1. 前言 JMeter录制有两种方式,一种是JMeter自带录制方法,另一种是下面要学习的Badboy录制,个人推荐使用此方法 下面教程不设计Badboy安装,可以百度一下. 2. 录制步骤: 2. ...
- Jmeter脚本录制方法(一)分别使用Badboy录制和Jmeter自带的代理服务器录制
Jmeter录制方式分三种,分别是:使用Badboy录制.Jmeter自带的代理服务器录制和手工录制,今天先介绍前两种录制方法. Badboy录制 Badboy是用C++开发的动态应用测试工具, 其拥 ...
- 【jmeter】jMeter使用Badboy录制Web测试脚本
JMeter 是纯Java编写的软件功能和性.能测试工具,其录制脚本过于笨拙和复杂.而Badboy是用C++开发的动态应用测试工具,其拥有强大的屏幕录制和回放 功能,同时提供图形结果分析功能,刚好弥补 ...
- Jmeter运行badboy录制的脚本
前言 进行性能测试的站点为:在本地搭建的bugfree 一.badboy录制脚本 1.启动bugfree服务 2.打开badboy进行脚本录制 2.1.打开badboy,按下启动录制按钮,在地址栏中输 ...
随机推荐
- 用js进行日期的加减
如题,开始查了查js的使用文档,但没发现可以直接用的函数,于是就想自己写函数来着,这就要涉及到每个月天数的判断,如果是2月份的话,还要涉及到闰年的判断,虽然不复杂但我想js应该不会这么低级,于是查了下 ...
- ios 将Log日志重定向输出到文件中保存
对于真机,日志没法保存,不好分析问题.所以有必要将日志保存到应用的Docunment目录下,并设置成共享文件,这样才能取出分析. 首先是日志输出,分为c的printf和标准的NSLog输出,print ...
- 为什么要用Message Queue
摘录自博客:http://dataunion.org/9307.html?utm_source=tuicool&utm_medium=referral 为什么要用Message Queue 解 ...
- Visio编辑数据库模型列
Visio编辑数据库模型列:邮件group->Open实体,进入实体属性编辑界面,按回车可以添加.
- 【BZOJ 2120】 数颜色
Description 墨墨购买了一套N支彩色画笔(其中有些颜色可能相同),摆成一排,你需要回答墨墨的提问.墨墨会像你发布如下指令: 1. Q L R代表询问你从第L支画笔到第R支画笔中共有几种不同颜 ...
- Log4Net学习【二】
Log4Net结构详解 当我们在描述为系统做日志这个动作的时候,实际上描述了3个点:做日志,其实就是在规定,在什么地方 用什么日志记录器 以什么样的格式做日志.把三个最重要的点抽取出来,即什么地方,日 ...
- android 开发 system/app目录下面有多个重复包名的apk,会不会冲突
环境:已经拥有了root权限的android系统,我们的apk是开机启动 测试:将2个相同的版本拷贝到系统system/app目录下面 adb root #获取root权限,前提是已经开放了root权 ...
- JS 学习笔记--6---日期和时间
在日期和时间这一块的学习中发现,其实和其他大部分的高级语言中时间和日期的操作差不多,没什么特别的,但是要注意的就是 ECMAScript中规定的一些方法在各大浏览器中的实现方式是不一样的,也就是说存在 ...
- 【BZOJ】【1024】【SCOI2009】生日快乐
枚举 想到以后一秒钟变水题…… 一开始我想:这不是可以随便切吗……但是突然想到:第一刀,必须切在n等分点上!因为要求最后每块的大小相等,那么同理,比如总共要切成7块,第一刀切成了$\frac{3}{7 ...
- 项目分析(map复习)
有段时间没看map里面的东西了,刚才看发现功能上增加了一些,在来复习了一次流程初始化每个map建立线程,这个线程有两个功能,1.处理GS发过来的包 2.驱动map里面的定时器GS发过来的包是存在m_g ...