一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其
他点击,例如引发javascrīpt的操作.
3表单提交
表单提交是页面中非常重要的部分,有下面一些案例需要注意:
1如果页面表单中某些参数是依赖于某些参数的
输入,比如field B由javascrīpt根据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脚本的时候,jscrīpt不被导出,因为jmeter无内迁browser,jscrīpt元素无法执行.
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 scrīpt.)
F8
Shows/Hides scrīpt Tree
F9 Shows/Hides Summary
Tab View
F12 Shows/Hides both scrīpt and Summary
Views together (gives browser full window space)
Ctrl+Enter
Replays the item current item in the scrīpt
Ctrl+Shift+Enter
Replays the current step in the scrīpt
Ctrl+Shift+Left
Rewinds the play marker to the previous step.
Ctrl+Alt+Up
Moves the play marker to the previous item in scrīpt.
Ctrl+Alt+Down
Moves the play marker to the previous item in scrīpt.
Ctrl+L
Displays the lines Server Log File related to the most recent browsing
activity.
Ctrl+K Clears all responses from the
scrīpt.
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 scrīpt 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
scrīpt Tree.
LoadBalancer:介绍下载
http://www.stable.com.tw/index.php?option=com_content&view=article&id=124&Itemid=82&lang=zh