时间:2020-10-12 11:28:55 浏览:
Selenium IDE |
Selenium Remote Control |
Selenium Core |
Selenium Core HTA |
|
浏览器支持 | 仅 Firefox | 很多 | 所有 | 仅 IE |
需要远程安装 | 否 | 否 | 否 | 否 |
支持 HTTPS/SSL | 是 | 是* | 是 | 是 |
支持跨域 | 是 | 是* | 是 | 是 |
需要 Java | 否 | 是 | 否 | 否 |
将测试结果保存到磁盘 | 是 | 是 | 否 | 是 |
多语言支持 | 仅 Selenese | 很多 | 仅 Selenese | 仅 Selenese |
* = Selenium RC 中实验性的支持
浏览器支持:Selenium IDE 仅可以在 Firefox 中工作。Selenium Remote Control 直接支持 Firefox 和 IE,此外还支持手动配置很多其它浏览器。 Selenium Core 几乎可以在任何浏览器中工作,因为它是纯粹的JavaScript。Selenium Core HTA 可以在 IE 最高安全等级(特权)下工作,这意味着它仅能在 IE 下工作。
需要远程安装:Selenium Core 需要在被测试应用程序(Application Under Test, AUT)的网站内安装,因为 同源安全策略 ,一个阻止进行跨网站脚本访问的安全策略。那意味着你不能坐在那里写一个 Selenium Core测试而运行在 google.com;如果要那样做,你需要在 google.com 安装 Selenium Core。如果你不能/不会在你的被测应用程序 AUT 上面安装 Selenium Core,不能保证它在 AUT 相同的服务器上公开可见,那么Selenium Core 可能不适合你。
同源安全策略不会限制 Selenium IDE,因为它作为 Firefox 扩展实现;它对于 Selenium Core HTA 也无效,因为它运行于 IE 的最高安全级别(特权)上。Selenium RC 通过提供一个代理服务器来保证 Selenium JS 文件看似来自相同的远程服务器,从而符合同源策略;代理服务器欺骗浏览器,让它认为这里的确有像http://www.google.com/selenium/这样的目录。
支持 HTTPS/SSL:最新版本的 Selenium Remote Control 的代理服务器可以支持 HTTPS 网站(当前所指版本为 0.9.0),但是这个支持还是实验性的。参考使用试验性的浏览器加载器支持跨域:同源策略意味着测试一个服务器/域不能操作另外一个服务器/域。这意味着 Selenium Core 不能处理跨多个不同域的应用程序。
Selenium RC 可以处理切换域的问题,但是这个支持是实验性的。参考使用试验性的浏览器加载器获取更多信息。
需要 Java:Selenium Core 和 Selenium IDE 直接在浏览器中运行。Selenium RC 需要安装 Java(运行代理服务器)。注意,虽然 Selenium RC 需要 Java,你也可以用.NET、Perl、Python 和 Ruby 编写你的 RC 测试,但是你需要 Java 来运行代理。
将测试结果保存到磁盘:Selenium Core 不能将任何测试结果写到磁盘上(因为它是用 javascript 写的,它不允许向磁盘写数据),当然你可以将测试结果发送到另外一台服务器保存。(你 可以 通过 Selenium COre HTA保存测试结果。) Selenium Remote Control 提明确供支持运行测试并用多种语言讲测试结果写入磁盘的功能 ;它还可以为 Selenium Core 结果处制理服务器。Selenium IDE 是一个 Firefox 扩展,所以当然支持将测试结果存盘。
语言支持:Selenium Remote Control 允许你用任何语言写测试,包括 Java、.NET、Pertl、Python 和 Ruby。(你还可以为其它语言添加测试的支持。) Selenium IDE 和 Selenium Core 仅支持使用"Selenese"测试, 一种简单的脚本语言。 Selenese 有一些严格的限制:它没有条件(没有"if"表达式),并且它没有循环(没有"For"表达式)。这会使编写复杂的测试变得困难甚至不可能。
使用 SeleniumServer 执行 Selenium 测试,是功能最强的,建议使用 Unit 单元测试和SeleniumServer 这种方式执行测试。
版权属于:技术博客
原文地址:https://www.wyxbc.com
版权声明:转载时必须以链接形式注明原始出处及本声明。
发布此文章仅为传递网友分享,不代表本站观点,若侵权请联系我们删除,本站将不对此承担任何责任。