理论教育 Selenium2自动化测试:从入门到精通

Selenium2自动化测试:从入门到精通

时间:2023-10-25 理论教育 版权反馈
【摘要】:Rollup命令用于将一系列Selenium IDE中能用的命令打包在一起。图2.17 126邮箱的“收件箱”文件夹和“已发送”文件夹图2.18 Selenium IDE不使用Rollup功能的测试脚本在Options页面上,有几个选项需要注意:1)Default timeout:默认情况下,timeout的数值为30000ms。图2.20 添加rollup命令使用Rollup后,测试用例的完整步骤如图2.21所示。图2.21 Selenium IDE使用Rollup功能的测试脚本从图2.21中可以看到最显著的差异在于使用了rollup命令以及Target为logincommands,即user-extension.js中定义的rollup规则。可见rollup功能在封装多条相同命令时非常高效。

Selenium2自动化测试:从入门到精通

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所示。

978-7-111-46783-0-Chapter02-17.jpg

图2.17 126邮箱的“收件箱”文件夹和“已发送”文件夹

978-7-111-46783-0-Chapter02-18.jpg

图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)

978-7-111-46783-0-Chapter02-19.jpg

图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源码如下:

978-7-111-46783-0-Chapter02-20.jpg

978-7-111-46783-0-Chapter02-21.jpg

在简单介绍了如何在Selenium IDE中添加用户自定义拓展文件之后,再次回到Rollup的主题。

在Selenium IDE主界面上添加rollup命令,如图2.20所示,可以看到Target栏提示信息为user-extension.js中出现的logincommands,并且可以看到其描述信息为log in to 126.com。

978-7-111-46783-0-Chapter02-22.jpg

图2.20 添加rollup命令

使用Rollup后,测试用例的完整步骤如图2.21所示。

978-7-111-46783-0-Chapter02-23.jpg

图2.21 Selenium IDE使用Rollup功能的测试脚本

从图2.21中可以看到最显著的差异在于使用了rollup命令以及Target为logincommands,即user-extension.js中定义的rollup规则。该规则通过RollupManager添加进来。

接下来是信息栏的Rollup,如图2.22所示。logincommands的rollup操作实际上是将以下4个步骤打包起来使用:

978-7-111-46783-0-Chapter02-24.jpg

这样就确保了只使用单独一条logincommands就可以替代原先4条命令需要完成的动作。即使重复登录,增加的测试用例的步骤也只是多一条rollup命令而已。可见rollup功能在封装多条相同命令时非常高效。

978-7-111-46783-0-Chapter02-25.jpg

图2.22 Rollup命令的详细步骤

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈