使用 Selenium 实现基于 Web 的自动化测试(5)

发表于:2017-07-24来源:未知作者:jib点击数: 标签:selenium
说明:程序的入口是 Run task,在 Run task 里先是编译整个工程,然后读取 TestSuites.xml 配置文件,循环执行每一个测试套件。过程中,以此执行以下操作:

说明:程序的入口是 Run task,在 Run task 里先是编译整个工程,然后读取 TestSuites.xml 配置文件,循环执行每一个测试套件。过程中,以此执行以下操作:

读取配置的并且实现 TestCase 的 Java 类;

调用 Ant 的 junit task 执行测试用例;

调用 Ant 的 junitreport task 生成报表;

调用 Ant 的 mail task 发送报表到指定邮箱。

清单 3. TestSuites.xml 配置文件样例

<TestSuites> 
<TestSuite enable="false" id="DiscoverTestSuite"> 
<Testcase>VerifyLogin</Testcase> 
<Testcase>DiscoverDevice</Testcase> 
</TestSuite> 
<TestSuite enable="true" id="DeleteDeviceTestSuite"> 
<Testcase>VerifyLogin</Testcase> 
<Testcase>DeleteDevice</Testcase> 
</TestSuite> 
</TestSuites>

说明:配置文件中定义了两个测试套件,第一个包含了 2 个测试用例,先 Login 再发现设备。第二个也包含了 2 个测试用例,先 Login 再删除设备。而第一个测试套件 enable=false 将不被执行。

到此为止,一个简单的可持续测试框架就已经搭建完毕,来运行下看看结果吧

运行测试组建

用 ant 命令执行 Build.xml 即可运行测试框架。

图 9. 工具运行时

执行完成后就会将所有测试用例的结果以报告形式发送邮件到指定邮箱。

图 10. 报告式样

结束语

本文首先介绍了 Selenium 以及 Selenium 1 的实现原理。紧接着用一个 Login 的简单例子讲述了如何去搭建 Selenium 运行环境,并将其导出为 JUnit 代码。最后构建了一个基于 Ant 的自动化测试 Selenium 框架,持续地对生成的 JUnit 测试用例进行管理以及功能性测试。读者也可以借鉴该脚本搭建自己的轻量级的单元测试框架。

目前主流的 web 自动化测试框架还有 QTP,基于 Ruby 的 WATIR。与这些框架相比,Selenium 支持 IE、Mozilla Firefox 等多种浏览器,同时支持自动录制脚本以及 Java、C#、Ruby 等多种运行语言的自动生成,测试用例制作快捷,运行也比较快速。对于较为轻量级相比起来 Selenium 要显得更为灵活实用。Selenium 不仅用于功能性测试及回归测试,同时也可用于 Web 可视化验收测试。更多的,Selenium 可集成在诸如 Cruise 持续集成软件中,为整体项目提供更大集成测试范围。

原文转自:http://www.uml.org.cn/Test/201707182.asp