【问题标题】:What is the difference between Selenium Remote Control and Selenium Server?Selenium Remote Control 和 Selenium Server 有什么区别?
【发布时间】:2011-01-23 14:20:51
【问题描述】:

Selenium download page 上,有一个指向Selenium RC(远程控制)的链接。

another Selenium download page 上有 Selenium RC 1.0.3Selenium 2 服务器 的链接,有时也称为 Selenium 2 独立服务器.

它们有什么区别?

如果有限制,每个限制是什么?

Selenium 服务器是否正在取代遥控器?

相关问题:selenium remote control vs webdriver

【问题讨论】:

    标签: selenium selenium-rc selenium-webdriver


    【解决方案1】:

    你应该看看documentation outlining the different parts of Selenium。这是一个很好的起点,因为它会指导您完成设置过程。完全公开,我帮助编写文档。

    对于这些下载,您拥有的第一个链接是该项目的官方版本。第二个链接是当前的 beta 版本,一旦它们达到 2.0,它们就会出现在网站上。

    • Selenium Core - 与其说是一个独立的项目,不如说是 selenium 的一个组件。无需深入了解项目历史,Selenium 曾经只是使浏览器自动化的 .js 文件的集合。没有人直接使用这些,它们只是出于遗留原因。
    • Selenium IDE - 一个用于录制/播放的 firefox 插件。你可能想从这个开始,习惯 api,但你很快就会适应它
    • Selenium RC,当您长大后,您将使用 Selenium Remote Control。 Selenium 1.x 是一种客户端-服务器架构。您使用 RC 库来编写与服务器通信的测试,服务器将这些命令中继到浏览器。
    • Selenium Grid - 一种在分布式计算机网络上运行 Selenium 测试的方法。一旦您进行了大量测试,就可以加快速度。
    • Cubic Test - 一个利用 selenium 进行测试的基于 eclipse 的工具。不知道它有多受欢迎。
    • - 基于网络的脚本和测试管理工具。使用 selenium RC 运行测试。

    然后我们进入 Selenium 2 beta。 Selenium 2 与 Selenium 1 模型有很大不同,因为它需要 Selenium 服务器。我说 'require' 因为在另一台计算机上远程运行测试是可选的。 Selenium Server Standalone 是您为此使用的服务器。它与 Selenium-RC 以及用于远程目的的 Selenium 2 兼容。

    您可能已经看到 Selenium 2 被称为 WebDriver。 WebDriver 是另一个几年前合并的项目,并成为 Selenium 2 的基础。这就是为什么 Selenium 2 有一个 WebDriver 接口,有时称为“WebDriver”api 以区别于 Selenium-RC。

    如果您刚刚开始,我会看看 Selenium 2。它现在得到了 99.9% 的开发人员的喜爱,而且 Selenium 1.x api 不会进一步发展。截至 2011 年 1 月,Java 库得到最好的支持,紧随其后的是 .Net 和 Python/Ruby。如果您需要其他 api 选项,Watir(流行的 Ruby 浏览器自动化库)在后台使用 selenium。

    【讨论】:

    • 非常感谢您的回答!我可以理解 Selenium 1 和 2 中的客户端/服务器架构。但是,您说服务器在 Selenium 2 中是可选的……如果没有这样的服务器,它如何工作?能提供一个快速的解释吗?
    • 每个浏览器都有一个专门构建的驱动程序,可以以最“自然”的方式进行交互。用于 IE 的 C++,用于 Firefox 的 javascript 插件,用于 Safari 的 applescript。这意味着支持新浏览器的速度较慢,但​​适配性比 Selenium 1 好得多。Selenium 2 库直接与该驱动程序对话。将 Selenium 2 视为客户端/服务器可能没有帮助。该服务器仅用于使用更高级的 RemoteDriver 执行测试。您绝对应该查看 Selenium 2 示例的文档seleniumhq.org/docs/09_webdriver.html
    • 答案中的链接和您上面评论中的链接都已失效
    • 有什么方法可以在您自己的应用程序中运行 selenium 测试(如 selenium IDE 在 html 中给出的)?这样我就可以将一些 selenium-something 库合并到应用程序中,然后在那里运行测试?
    • 如果您帮助编写文档,请添加回信息!死链接。
    【解决方案2】:

    Selenium's website 上的文档说遥控器由

    • 服务器
    • 客户端库

    服务器负责执行实际工作(在浏览器中执行操作),而您的操作规范(执行的控制 ) 来自不同的库

    这被称为远程控制,因为服务器不必部署在执行实际脚本的同一台机器上。这些脚本可以通过网络连接到远程 selenium 服务器并执行操作。

    总而言之,当您使用 Selenium Remote Control 时,您使用的是服务器 + 客户端库。它们旨在一起使用。

    我不知道这对于 Selenium 2 是否会相同,或者他们是否正在改变一些事情。我只相信这就是 Selenium 1 的工作方式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-01-10
      • 1970-01-01
      • 1970-01-01
      • 2011-10-23
      • 2016-05-17
      • 2016-01-09
      • 1970-01-01
      • 2016-03-12
      相关资源
      最近更新 更多