2.5 如何选择合适的Selenium

由于Selenium的工具有很多类型,在实际的工作中,选择一种类型适合我们工作的工具是特别重要的。表2-1所示为Selenium支持总结。

表2-1 Selenium支持总结

1.浏览器支持

● Selenium IDE是Firefox的一个插件,仅可以在Firefox下运行,所以只支持Firefox浏览器。

● Selenium RC支持很多常见的浏览器,如Firefox、IE、Safari等。

● Selenium Core几乎支持所有的浏览器,因为它是纯粹的JavaScript。

2.需要远程安装

● 这里只有Selenium Core需要,因为同源策略的原因。

● Selenium IDE是浏览器的扩展,不需要远程安装。

● Selenium RC提供了一个代理服务器“欺骗”浏览器,使它不受同源策略的影响。

3.将测试结果保存到磁盘

● Selenium Core不能将任何测试结果写到磁盘上,因为它是用JavaScript语言写的,它不允许向磁盘写数据,可以将测试结果发送到另外一台服务器保存。

● Selenium RC提供支持运行测试并用多种语言将测试结果写入磁盘的功能,还可以将Selenium Core处理结果返回服务器。

● Selenium IDE是Firefox扩展,当然支持将测试结果保存。

4.支持跨域

● 因为同源策略的原因,Selenium Core不支持跨域,即无法处理跨不同域的应用程序。

● Selenium IDE和Selenium RC支持跨域。

5.需要Java

● Selenium Core和Selenium IDE是直接在浏览器上运行的,不需要Java支持。

● Selenium RC虽然支持许多种语言编写脚本,但是它的服务器需要用Java来启动,因此需要有JRE。

6.多语言支持

● Selenium IDE和Selenium Core仅支持Selenese,Selenese有一些严格的限制,它没有条件,没有循环,这会使编写复杂的测试变得困难甚至不可能。

● Selenium RC支持很多种语言,如Java、C#、HTML、Ruby、Python等。