Rollup命令用于将一系列Selenium IDE中能用的命令打包在一起。其在Selenium IDE中可以充当“奇兵”,因为通过它可以帮测试用例进行“减肥”。接下来以一个实例来阐述它的“特异功能”,以网易126邮箱登录的页面为例,如图2.17所示。为讲解此例,特申请126邮箱的测试账号供演示。
邮箱地址:http://www.126.com
用户名:seleniumiderollup
密码:rollup123
场景1:
1)登录邮箱。
2)单击“收件箱”文件夹。
3)退出邮箱。
场景2:
1)登录邮箱。
2)单击“已发送”文件夹。
3)退出邮箱。
可以看到,用户有两次登录邮箱的操作。在不使用Rollup功能的情况下,使用Selenium IDE完成上述用户场景的测试用例步骤如图2.18所示。其中登录的步骤显得有些冗余,一共占用了8条命令。
在讲解Rollup的功能之前,先预习一下在Selenium IDE中如何使用用户自定义拓展文件。单击Selenium IDE的Op-tions菜单,打开General界面。用户自定义拓展文件的添加地方如图2.19所示。
图2.17 126邮箱的“收件箱”文件夹和“已发送”文件夹
图2.18 Selenium IDE不使用Rollup功能的测试脚本
在Options页面上,有几个选项需要注意:
1)Default timeout:默认情况下,timeout的数值为30000ms。这个数值会影响Selenium IDE中脚本的执行时间。可以自行根据实际需要调整该数值。如果某个命令的执行时间超时,那么在Log框中会得到如下错误信息:[error]Timed out after 30000ms。
2)Selenium Core extensions:用户可以根据需要来拓展Selenium IDE功能,其方法就是引入用户自定义的拓展文件,即user-extension.js,而且必须是以js为扩展名的文件。单击Browser按钮并选中需要添加的用户拓展文件即可。
注意:
在添加用户自定义拓展文件之后,需要重新启动Selenium IDE,否则该改动无法生效。
3) Selenium IDE extensions:用于添加数据文件,同样只能解析以js为扩展名的文件,并且也需要重启Selenium IDE来使其生效。(www.daowen.com)
图2.19 设置user-extension.js的方式
4)Remember base URL:如果勾选此项,Base URL会记住最近一次使用的链接地址。
5)Record assertTitle automatically:如果勾选此项,在每浏览一个网页时,Selenium IDE会自动添加“assertTitle”命令到测试脚本的步骤中。
6)Record absolute URL:如果勾选此项,Selenium IDE会记录网页的绝对路径,如以http:或者以https:开头的链接地址。
7)Start recording immediately on open:如果勾选此项,Selenium IDE就会在每次打开时自动开启录制功能。
针对本示例的用户自定义拓展文件的user-extension.js源码如下:
在简单介绍了如何在Selenium IDE中添加用户自定义拓展文件之后,再次回到Rollup的主题。
在Selenium IDE主界面上添加rollup命令,如图2.20所示,可以看到Target栏提示信息为user-extension.js中出现的logincommands,并且可以看到其描述信息为log in to 126.com。
图2.20 添加rollup命令
使用Rollup后,测试用例的完整步骤如图2.21所示。
图2.21 Selenium IDE使用Rollup功能的测试脚本
从图2.21中可以看到最显著的差异在于使用了rollup命令以及Target为logincommands,即user-extension.js中定义的rollup规则。该规则通过RollupManager添加进来。
接下来是信息栏的Rollup,如图2.22所示。logincommands的rollup操作实际上是将以下4个步骤打包起来使用:
这样就确保了只使用单独一条logincommands就可以替代原先4条命令需要完成的动作。即使重复登录,增加的测试用例的步骤也只是多一条rollup命令而已。可见rollup功能在封装多条相同命令时非常高效。
图2.22 Rollup命令的详细步骤
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。