【前言】
今天来为大家介绍下BadBoy录制模式: Request 和 Navigation的比较!
如果您的电脑还未安装BadBoy这款工具的话,可以参考下BadBoy安装步骤和简单介绍:http://www.cnblogs.com/baoziluo/p/7907964.html
【正文】
1.Badboy提供两个模式的录制:Request(默认模式) 和Navigation模式.点击下图“N”,切换模式,录制的区域是Badboy右半部分--内容控件区
2.首先来看下用BadBoy录制同一个操作过程下两种模式Request 和 Navigation下的录制结果:
Request模式下录制效果图:
Navigation模式下录制效果图:
3.两者区别:
Request模式具有如下优点:如果测试的网页模版修改了,不影响脚本的回放.如果需要badboy导出脚本到jmeter进行性能测试,必须选择request模式.
request模式的缺点如下:request模式需要添加大量的断点来检查页面上的item.
Navigation模式将会记录网站交互过程中浏览器中的元素的点击动作.当回放navigation模式脚本时候,不但回放http request,同时badboy会模拟浏览器中点击动作.
Navigation录制browser的三种元素如下:1链接点击 2按钮点击 3其他点击,例如引发javascrīpt的操作.当你记录一个点击一个元素,它使用以下逻辑来记录元素名字:
1. 如果它有一个id,然后它将记录的id
2. 如果它有一个惟一名称,它会记录下名字
3. 如果它是一个链接或一个按钮并具有独特并容易识别的文本(比如按钮上的标签),那么它将记录文本和区别其他元素或控件
4. 如果没有其他方法的运用,它将识别元素在浏览器DOM的位置,使用一个JavaScript表达式记录。
navigation模式的缺点是 :无法使用navigation脚本进行性能测试,因为性能测试引擎运行时候不显示任何用户界面,所以无法执行navigation中模拟点击等动作.
>>>>>>>>
综上所述:选择navigation模式还是request模式,取决于测试的目的,如果仅仅要求测试功能而不关心界面,则request模式无疑为首选.
1 当软件的界面趋于稳定,还是使用“N”方式做回归测试比较方便。Request方式经常会不识别控件,特别是弹出的窗体,尤其对日历控件反应迟钝,比如Oracle ADF控件,报出很多no found的错
2 一定要Badboy预留出记录动作及输入值的时间,同时还要考虑网站的反应速度等因素,所以录制时一定要动作过渡慢一些,动作与动作之间干净利索
3 录完的脚本一定要跑一遍,根据观察跑的过程,再删及补录过程。
4 录制过程要减少耦合,测试点的最小单位是Step,假设测试登陆淘宝后,删除购物车的商品,至少应该有3个Step,1 登陆 2 选择购物车 3 删除购物车的商品。这样做的好处是play脚本时,可以选择从step2 开始,而不需要重复登陆