zoukankan      html  css  js  c++  java
  • Selenium RC 与 Web Driver 的区别

       刚刚在一个博客上看到了说这两个自动化框架的区别,虽然不全,感觉还是有点儿道理的,就复制过来了,我会附加上原博文的链接的:http://blog.csdn.net/caiqcong/article/details/8537406
    作者不要见怪哟,我不会偷窃你的成果的!!Selenium <wbr>RC <wbr>与 <wbr>Web <wbr>Driver <wbr>的区别

    Selenium RC 工作原理:

    1.      RC server 在服务端启动 浏览器 并将Core 注入到浏览器中 (为了解决浏览器的同源策略)

    2.      我们的测试脚本调用Client API,Client将操作转化成标准的selenese语句发送给RC Server。

    3.      Selenium Core 解释selenese 语句,通过js的方式操作浏览器。


    Web driver 工作原理:

    1.      WebDriver 启动目标浏览器,并绑定到指定端口。该启动的浏览器实例,做为web driver的remote server。

    2.      Client 端通过CommandExcuter 发送HTTPRequest 给remote server 的侦听端口(通信协议: the webriver wire protocol)

    3.       Remote server 需要依赖原生的浏览器组件(如:IEDriver.dll,chromedriver.exe),来转化转化浏览器的native调用。

     

    那么remote server端的这些功能是如何实现的呢?答案是浏览器实现了webdriver的统一接口,这样client就可以通过统一的restful的接口去进行浏览器的自动化操作。目前webdriver支持ie, chrome, firefox, opera等主流浏览器,其主要原因是这些浏览器实现了webdriver约定的各种接口。

     

    对于优缺点:

    1.      RC 需要启动一个 RCserver,就直观感觉上多了一个步骤。

    2.      RC 采用js 的方式,稳定性和兼容行方面还是取决与js的代码的质量。有时需要自己去写js代码来扩展相应的功能。由于自己是从RC用起的,对于RC js的方式还是比较接受,感觉比较灵活。

    3.      至于弹出对话框和警告框的处理,RC原生是不支持的。不过可以通过第三方软件来解决,比如autoit。我用的就是autoit,使用简单方便,是一个不错的工具。

     

    其实还有个网页,讲这方面讲的更多,由于内容太多了,就不复制了,直接贴上链接吧:

    Selenium VS Webdriver:http://www.ibm.com/developerworks/cn/web/1309_fengyq_seleniumvswebdriver/index.html

    ----夫英雄者,胸怀大志,腹有良谋,有包藏宇宙之机,吞吐天地之志者也。
  • 相关阅读:
    真正的e时代
    在线手册
    UVA 10616 Divisible Group Sums
    UVA 10721 Bar Codes
    UVA 10205 Stack 'em Up
    UVA 10247 Complete Tree Labeling
    UVA 10081 Tight Words
    UVA 11125 Arrange Some Marbles
    UVA 10128 Queue
    UVA 10912 Simple Minded Hashing
  • 原文地址:https://www.cnblogs.com/eagleking0318/p/6521055.html
Copyright © 2011-2022 走看看