软件测试(五)之 Lab2 Selenium
1、安装SeleniumIDE插件
首先下载最新版火狐浏览器。在工具栏“附加组件”中,搜索“Selenium IDE”,选择查看所有结果:
然后点击“添加到Firefox”安装,重启浏览器生效。
2、使用SeleniumIDE录制脚本和导出脚本
2.1 录制脚本
Selenium插件安装好之后,点击工具栏上的图标打开插件如下:
以登录下面的邮箱系统为例:
首先点击右侧的红色按钮开始录制脚本,之后使用火狐浏览器访问http://www.ncfxy.com/,填写正确的用户名和密码中分别,点击提交登录。进而登录进系统
对页面元素点击右键,如图所示可找到对应的assertText,也可用到程序中找到相应的元素,十分方便。
点击IDE中的红色按钮,完成录制:
可以看到刚才填写的帐号,密码以及选择的assertText。
2.2 导出脚本
(1)Optinons-->Options-->General,选中Enable experimental features
(2)通过Options-->Format选择要导出成的相应格式。
为了Java使用,选择Java/JUnit4/WebDriver
得到生成的Java文件代码如下所示:
3、编写Selenium Java WebDriver程序,测试info.csv表格中的学号和邮箱的对应关系‘’
代码详见github,下面说一下有关的注意事项:
(1) 浏览器启动需要指定应用地址:
这样才可以正常启动WebDriver
(2) WebDriver访问网页,操作页面元素的操作十分简单,填入数据,提交等都有相关函数,如下:
get,findElement,sendKeys,click等都是十分简单易用的。
(3) 读取csv文件可以直接读取,注意逗号隔开即可,也可导入javacsv.jar包,便可利用相关函数简单操作:
(4) 本次测试我们组尝试了两种测试方法,采用参数化测试以及不采用。
使用参数化测试的话需要函数为static类型,注意构造数据的类型等,如下所示:
这样可以构造出多组测试用例,但是随之而来的就是时间上的消耗大大增多:
不采用参数化测试的话,就需要通过循环来做,速度快了许多,不过只有一个测试用例
代码如下;
(5) 定位页面元素有许多方法,在邮箱元素没有id的情况下,Selenium给出了xpath的形势,这个可由插件得到,很方便:
我也尝试了另一种方法:
这是根据标签定位元素,比较适用于简单的页面,比较而言还是xpath比较好。