菜鸟学自动化测试(一)----selenium IDE对于,我们做测试的新手来说,自动化测试一直是一个比较高级的领域,当然是相对于手工测试来说。最近,对自动化测试产生了兴趣。不,具体点应该是对selenium工具产生了兴趣。为什么不是QTP呢,之前,QTP也有学习,后来还买了本《QTP自动化测试进阶指南》,看了几天,不知为什么看不下去。嗯!我一直偏爱于开源的技术和工具。最早用LR做性能测试,后来发现了JMeter那个小工具后,基本上能用JMeter解决的问题,就不在用LR了。开源的东西好处多多,当然了不足也多多。这里就不啰嗦了。呵呵。 下面说说selenium吧!想学一样东西,找相关学习资料是第一步。说说我觉得比较好的资料:《selenium私房菜系列》、selenium官方文档、《selenium 1.0 testing tools 》。不过,我还是买了一本书,我把在当当网的评论贴过来。 "本来想买,后来听朋友说,内容行间距很大,有凑页数的意思,前面部分是在翻译(selenium)官网的文档,包括后面也?有真正写出作者公司的实战经验。打开一看基本和朋友说的一样。为什么后来又要买了,有几分无奈在里面。selenium 的中文资料并不多,网上的都是零散的皮毛,本人英语很差,所以,英文的资料看起来太吃力。《selenium 1.0 testing tools 》其实是一本很好的书,可惜没有中文的,其实可以慢慢啃,但selenium 2.0都出来了,selenium RC 已经被selinum server替代,又加了很多新技术,跟不上啊。所以,只能选了这本书,希望对我有所帮助。" 下面我的笔记也算是基于《零成本实现web自动化测试---基于seleinum与Bromine》这本书的。 ----//认识IDE面板
为了方便简洁,我们就按照上图的数字标记介绍: 1。文件:创建、打开和保存测试案例和测试案例集。编辑:复制、粘贴、删除、撤销和选择测试案例中的所有命令。Options : 用于设置seleniunm IDE。 2。用来填写被测网站的地址。 3。速度控制:控制案例的运行速度。 4。运行所有:运行一个测试案例集中的所有案例。 5。运行:运行当前选定的测试案例。 6。暂停/恢复:暂停和恢复测试案例执行。 7。单步:可以运行一个案例中的一行命令。 8。录制:点击之后,开始记录你对浏览器的操作。 9。案例集列表。 10。测试脚本;table标签:用表格形式展现命令及参数。source标签:用原始方式展现,默认是HTML语言格式,也可以用其他语言展示。 11。查看脚本运行通过/失败的个数。 12。当选中前命令对应参数。 13。日志/参考/UI元素/Rollup 日志:当你运行测试时,错误和信息将会自定显示。 参考:当在表格中输入和编辑selenese命令时,面板中会显示对应的参考文档。 UI元素/Rollup:参考帮助菜单中的,UI-Element Documentation。
----//编辑命令
selenium为我们录制的脚本不是100%符合我们的需求的,所以,编辑录制的脚本是必不可少的工作。 1. 编辑一行命令或注释。 在Table标签下选中某一行命令,命令由command、Target、value三部分组成。可以对这三部分内容那进行编辑。
2. 插入命令。 在某一条命令上右击,选择“insert new command”命令,就可以插入一个空白,然后对空白行进程编辑。 3. 插入注解 以上面同样的方式右击选择“insert new comment”命令插入注解空白行,本行内容不被执行,可以帮助我们更好的理解脚本,插入的内容以紫色字体显示。 4. 移动命令或注解 有时我们需要移动某行命令的顺序,我们只需要左击鼠标拖动到相应的位置即可。
----//录制我们的第一个脚本
我们的录制流程: 注:注意开启和关闭selenium IDE面板上的红色圆形的录制按钮。 录制的脚本:
----//调试脚本
1. 设置断点。 要设置断点,先选择一行命令,点击鼠标右键,在下拉菜单中选择“Toggle Breakpoint”命令,点击“运行”按钮,脚本会运行到断点处停止。用过myecilpse的debug功能来调试脚本的同学懂的! 2. 通过页面源代码来调试脚本 很多情况下,调试自动化测试案例都离不开查看页面源代码,我们可以借助firefox的firebug工具,关于firebug的安装(浏览器菜单栏---工具---查看组件---搜索firebug---安装并重启浏览器即可)。 如:我们不确定或想获得谷歌搜索按钮的属性。在按钮上右击---查看元素 在浏览器下方打开的firebug工具里面,就可以查看按钮代码了。
3. 定位辅助 当selenium IDE录制脚本时,它会存储额外的信息,支持用户挑选其他格式的定位器来代替默认格式的定位器,这种特殊性对于学习定位器很有用。 我们可以选择其他的命令来代替“name=btnG” 命令,当然,脚本依然是可以运行的。
|