Selenium - 介绍
Selenium是一个开源的和便携式的自动化软件测试工具,用于测试Web应用程序有能力在不同的浏览器和操作系统运行。
Selenium家族成员
| 工具 | 描述 |
|---|---|
| Selenium IDE | Selenium 集成开发环境(IDE)是一个Firefox插件,可以让测试人员跟着,需要测试的工作流程,以记录他们的行为。 |
| Selenium RC | Selenium远程控制(RC)为旗舰测试框架,它允许多个简单的浏览器动作和线性执行。它使用的编程语言,如Java,C#,PHP,Python和Ruby和Perl的强大功能来创建更复杂的测试。 |
| Selenium WebDriver | Selenium的webdriver前身是Selenium RC,直接发送命令给浏览器,并检索结果。 |
| Selenium Grid | Selenium网格用于运行在不同的机器,不同的浏览器同时以最小化执行时间的并行测试的工具。 |
Selenium优势
QTP和Selenium 都是市场上软件自动化测试最常用的工具。因此,selenium有更多的意义,现在selenium比较QTP/ UFT有更多的优点。
| Selenium | QTP/UFT |
|---|---|
| Selenium 是一种开源工具。 | QTP是一个商业工具和成本涉及许可证。 |
| 可以扩展它公开DOM各种技术。 | 有限的附加组件和需要附加组件的技术。 |
| 可以在不同浏览器执行脚本。 | 可以运行测试在Firefox,IE和Chrome浏览器的特定版本。 |
| 可以执行各种操作系统的脚本。 | 仅适用于Windows操作系统。 |
| 支持的移动设备。 | 支持第三方工具的移动设备。 |
| 执行在浏览器中测试,这不是必需的,重点是脚本执行的进度。 | 脚本执行的工具作用于浏览器(模拟用户操作)过程中需要重点 |
| 可以并联使用Selenium网格运行测试。 | QTP不能并行执行测试,但与质量控制整合QTP允许测试并行执行。质量控制也是一种商业工具。 |
Selenium 缺点
现在我们讨论selenium较QTP的缺陷。
| Selenium | QTP/UFT |
|---|---|
| 仅支持基于Web的应用程序。 | 可以测试Web和桌面应用程序。 |
| 任何功能部件,例如对象存储库/恢复方案 | QTP已经或和恢复方案内置。 |
| 没有IDE,所以这样的脚本开发,不会快于QTP。 | 更直观的IDE,自动化,可以实现更快。 |
| 不能在浏览器中访问控制 | 可以在浏览器中访问控制,如收藏夹栏,后退和前进按钮。 |
| 没有默认生成测试报告。 | 默认的测试结果生成工具中。 |
用于参数设置,用户必须依赖于编程语言|参数是内置的,易于实现。
创建Selenium IDE测试实例
因为Selenium IDE 是一个Firefox插件,安装该插件只需要在firefox浏览器附件组件里搜索Selenium IDE,然后安装启用
安装完在菜单栏工具中就可以看到 Selenium IDE
打开后可以看到
本人简单录制百度搜索selenium ,然后输出测试用例为 Java /JUnit4/WebDriver
使用webdriver脚本
- 创建java项目,build path 添加引用Selenium webdriver的库文件夹中的所有JAR,selenium-java-2.44.0.jar和selenium-java-2.44.0-srcs.jar,拷贝输出的测试用例类到java项目中
若运行测试类报如下错误,那么就是selenium版本与firefox版本不兼容造成的
*附上firefox版本下载
*Selenium 版本下载
*文章部分内容参考易百