您的位置:起点软件下载编程工具badboy

badboy自动化测试工具 官方免费版

软件大小:5335KB

用户评分:

软件类型:国产软件

运行环境:Win All

软件语言:简体中文

软件分类:编程工具

更新时间:2015/11/13 8:57:53

授权方式:免费软件

插件情况:无 插 件

badboy自动化测试工具是一款强大WEB测试工具,它被用于测试和开发复杂的动态应用,badboy测试工具提供了强大的屏幕录制和回放功能,同时也提供了丰富的图形结果分析功能。badboy测试工具通过协议包进行数据交换,响应速度非常快,而且软件使用非常的简介,安装环境不受任何限制,操作简单不需要输入代码,通过强大HTTPS加密进行模拟录制,使得测试和开发更加容易。


【软件功能】

JMeter 是纯Java编写的功能与性能测试工具,但其录制脚本过于笨拙复杂,成为使用者的诟病。Badboy是用C++开发的,被用于测试和开发复杂的动态应用。 它提供了强大的屏幕录制和回放功能,同时也提供了丰富的图形结果分析功能。只要不用于商业目的就可以免费使用。因此这两工具的结合,就成为了绝配。你可以 用Badboy录制脚本,然后将录制的脚本导出为JMeter格式的脚本,最后将该脚本导入到JMeter,借助于JMeter强大的测试功能模拟大量的 虚拟用户,进行复杂的性能测试。

【界面介绍】

1. 下载后安装
2. 点击图标,你将看到Badboy的IDE界面,下图是我对界面进行的简单注解,其中包括Badboy官网的一个介绍截图



二 界面及功能总述
1. 菜单栏:
.1 File: 包括常用的打开脚本,新建脚本,导出脚本,保存脚本等功能
.2 Edit: 点击Edit menu下的Search/Replace将在面板中弹出如下界面,帮助我们在脚本中选择和替换功能。点击X 关闭窗口。当然我们也可以使用F3快捷键弹出此界面



.3 View: 点击和再次点击,改变展示和隐藏视图区域,其中Report 功能还有3种定制供用户选择,这部分将来的课程会讲解
.4 Tools: 中的功能较多,比如我们可以配置数据源自动化的填充数据到测试的系统上,特别是某些测试点值不能唯一时,从数据源读取是很普遍的方法,QTP就能便捷读取Excel的数据
.5 Preferences: 我们可以在General Tab下改变系统设置 。比如:默认配置下,点击右侧箭头请求时自动触发录制,如果想取消此配置,可以去掉勾选,如下。



.6 Help:
其中点击Content可以帮忙文档,我的系列文章也是基于Badboy的帮助文档进行整理和依据



同时官网也提供其他3种类型的帮助文档的下载和在线阅读。点击Document,展示出文档类型



 2. Tools bar:部分工具介绍
.1 创建测试组,测试单元,步骤



.2 录制模式: Request 和 Navigation 两种



.3 运行脚本:我们也习惯称跑脚本



.4 其他:打开,保持,捕捉截图,创建变量,定时等
3 浏览器地址栏:由于Badboy录制区域是右半部分的内容区,因此网站的起点应该在地址栏启动
4 脚本树:这部分将在第三节课讲解

【使用说明】

一 badboy简介
Badboy监控internet explorer的活动,提供录制/回放功能.
录制功能:badboy窗口的顶部显示当前是否处于录制状态,如果点击play按钮,badboy自动关闭录制功能,等到play结束后,可以点击recording按钮,继续录制脚本.
Remark:必须等到上一步的request处理完毕后,才能点击发送下一个request,否则下一个request会作为第一个request的子frame.

二 基本操作
1 创建 suites,tests以及steps
测试与网站的交互过程,可以在逻辑上划分为几个步骤.例如第一个步骤为登陆雅虎邮箱,第二步为浏览收件箱,第三步为发送邮件.每一个步骤可以包含一到多次的网站交互动作.badBoy中点击new step创建新的步骤. <!--[if !vml]--><!--[endif]-->.同理,可以创建suites 以及tests.
Badboy回放时,一次执行一个step,每执行完一个step,会显示执行结果,用户必须再次点击play按钮后,执行下一个step.

2 自动化测试脚本
如果不修改脚本,简单的录制回放并不能满足复杂网站的测试.
复杂网站往往有下面一些测试场景:
A 页面参数唯一性要求,例如:注册页面,需要对用户的注册名进行唯一性校验.
B 测试的server地址不同.
Badboy提供了易用的参数修改方法,仅仅需要双击request或者参数,在弹出窗口内修改.同时badboy提供search&replacing功能来修改脚本中的参数值.

Remark:建议选择linking variables,同一个参数,往往脚本会发送多次,选择linking variables后,badboy会查找所有的与参数有关的值.并统一替换.

三 特点与技术
1 录制模式
Badboy提供两种录制模式:一 request 模式(默认模式) 二 navigation 模式.点击下图N,切换模式.
<!--[if !vml]--><!--[endif]-->
Request模式具有如下优点:如果测试的网页模版修改了,不影响脚本的回放.如果需要badboy导出脚本到jmeter进行性能测试,必须选择request模式.同时request模式的缺点如下:request模式需要添加大量的断言来检查页面上的item.
Navigation模式将会记录网站交互过程中browser中的元素的点击动作.当回放navigation模式脚本时候,不但回放http request,同时badboy会模拟brower中点击动作.navigation模式的缺点是 :无法使用navigation脚本进行性能测试,因为性能测试引擎运行时候不显示任何用户界面,所以无法执行navigation中模拟点击等动作.
总结:选择navigation模式还是request模式,取决于测试的目的,如果仅仅要求测试功能而不关心界面,则request模式无疑为首选.

2 navigation模式
Navigation录制browser的三种元素如下:
1 链接点击
2 按钮点击
3 其他点击,例如引发javaScript的操作.
3 表单提交
表单提交是页面中非常重要的部分,有下面一些案例需要注意:
1 如果页面表单中某些参数是依赖于某些参数的输入,比如field B 由javascript根据field A的输入值计算,使用request模式将无法录制正确的参数.

2 request模式下,表单中的所有参数都将发送.包括一些预定义的元素.

自动录制form的方法:点击form中某一field,按"Ctrl-Alt-f"录制form,如果每次提交的form名字不同的话,可以使用正则表达式来表示: logonForm[0-9]{4}


4 断言
断言是自动化检测的实现手段,badboy提供了两种断言:
1 content 检查
检查页面中是否包含指定的text.断言可以使用正则表达式,比如要检查一个正确登陆的例子,需要检查”welcome [A-z0-9]*\.”
问题:例子,比如”tree frog”在browser中显示,在html中显示为"tree frog",因为badboy测试实际的html source,因此将找不到这个断言.避免这个问题的方法是在page中高亮显示text,并使用easy assertion button.如果使用复杂断言,需要精确匹配html source中的text.
5 截屏
当测试失败时候,截屏是最有效的方法与开发人员沟通.在断言的属性栏中,选择失败是截屏.badboy会截取失败案例的browser屏.

6 timeout
可以为每个request设置timeout时间,右键点击à选择属性à选择play标签,设置timeout时间.

7 弹出框
使用断言检查弹出框,邮件选择断言,打开"Check against Message Boxes"选项.


8 Badboy与jmeter使用注意事项:
1 导出jmeter脚本的时候,jscript不被导出,因为jmeter无内迁browser,jscript元素无法执行.
2 data sources不被导出.

9 快捷方式
快捷方式如下:
F2 Toggles Record Mode On/Off
F3 Displays the search/replace dialog, or searches if the dialog is already open.
Ctrl-Alt-Right Starts playing from the current item.
Ctrl-Alt-Space Stops Playing
Ctrl+F5 Plays entire hierarchy from the current item. (Note: if focus is inside the browser, IE will intercept as "Refresh").
F6 Single steps (plays next single item in script.)
F8 Shows/Hides Script. Tree
F9 Shows/Hides Summary Tab View
F12 Shows/Hides both Script. and Summary Views together (gives browser full window space)
Ctrl+Enter Replays the item current item in the script.
Ctrl+Shift+Enter Replays the current step in the script.
Ctrl+Shift+Left Rewinds the play marker to the previous step.
Ctrl+Alt+Up Moves the play marker to the previous item in script.
Ctrl+Alt+Down Moves the play marker to the previous item in script.
Ctrl+L Displays the lines Server Log File related to the most recent browsing activity.
Ctrl+K Clears all responses from the Script.
Ctrl+J Attempts to find and edit the source code file for the current page and/or frame. that has focus in the browser.
Ctrl+Shift+J Attempts to find and edit the source code file for the current page and/or frame. that has focus in the browser and also adds the URL for the frame. to your script. as a Monitored request.
Ctrl+Shift+M Adds URLs for all frames in the current browser as Monitored requests.
Ctrl+D Toggles DOM View On/Off for the active window.
Ctrl+Page Up While in DOM View changes to previous frame. in frame. list
Ctrl+Page Down While in DOM View changes to next frame. in frame. list
Ctrl+Alt Changes Record Mode temporarily to Navigation Mode while held down
Ctrl+Alt+N Toggles record mode between Navigation and Request mode
Ctrl+Shift+D Opens the documentation editor for the item currently selected in the Script. Tree.

【使用教程】

1、Badboy下载。

2、安装Badboy。
双击BadboyInstaller-2.2.exe,然后根据提示进行Badboy安装。



3、使用Badboy录制脚本并导出为jmx格式。启动Badboy工具,进入Badboy安装目录下双击badboy.exe。



4、以登陆百度为例录制脚本,输入百度网址后敲回车,即进入百度界面。



5、登陆百度。



6、登陆成功后进入个人用户界面。



7、将录制脚本导出为jmx格式。
点击File→Export to JMeter...→另存为"百度登陆.jmx"→保存。



8、使用JMeter运行导出的jmx脚本
启动JMeter,导入"百度登陆.jmx"。
--点击文件→打开→选中“百度登陆.jmx”→打开。
添加"查看结束树"和"聚合报告"。
--右击Thread Group→添加→监听器→查看结果树。
--右击Thread Group→添加→监听器→聚合报告。



9、启动脚本运行完毕后"查看结果树"。(点击启动或"Ctrl+R"运行脚本)
注:百度网站安全级别高,将录制的脚本直接重新运行会出现相应异常,故此查看结构树和聚合报告都有异常。需做相应配置即可成功登陆。



10、启动脚本运行完毕后查看"聚合报告"。



Badboy录制脚本为英文版本,所以当JMeter打开jmx时测试计划显示为"Thread Group"。