23

谁能解释“硒服务器”和“硒服务器独立”罐子之间的区别以及两者的使用。

更喜欢哪一个?什么时候用哪一个?

4

6 回答 6

13

根据Selenium 文档

您可能需要也可能不需要 Selenium 服务器,具体取决于您打算如何使用 Selenium-WebDriver。如果您只使用 WebDriver API,则不需要 Selenium-Server。如果您的浏览器和测试都将在同一台机器上运行,并且您的测试只使用 WebDriver API,那么您不需要运行 Selenium-Server;WebDriver 将直接运行浏览器。

将 Selenium-Server 与 Selenium-WebDriver 一起使用是有一些原因的。

  1. 您正在使用 Selenium-Grid 将测试分布在多台机器或虚拟机 (VM) 上。
  2. 您想要连接到具有特定浏览器版本的远程计算机,该版本不在您当前的计算机上。
  3. 您没有使用 Java 绑定(即 Python、C# 或 Ruby)并希望使用 HtmlUnit 驱动程序。

这是旧版 selenium 网站的照片:

硒服务器旧页面

于 2013-10-03T09:46:26.267 回答
3

Selenium Server 以前称为 selenium RC 服务器。

我不能说确切的 selenium 服务器独立定义,但我可以根据版本说

在selenium server中standalone server是不同的

于 2014-02-09T05:08:41.817 回答
3

我相信“硒服务器”罐子“硒服务器独立”罐子。如果您查看http://www.seleniumhq.org/download/ - 没有“硒服务器”之类的东西。

网格和 RC 服务器在同一个 jar 文件中。RC(“远程控制”)在 Selenium 2 中被弃用,并在 Selenium 3 中被模拟。

懒惰地,“selenium server Standalone”可以称为“selenium server”,因为它就是:代理到 selenium 网格或您想要自动化的任何远程浏览器。“独立”是 HTTP 服务器。

http://www.protractortest.org/#/infrastructure暗示了术语上的差异:在本地运行时它是“独立的”,而在远程网格上运行(独立 jar)时是“服务器”(这是一个 http 服务器,将作业分配给多个 selenium 服务器,每个都运行“独立”jar)。

于 2017-06-16T16:48:21.307 回答
2

如果通过Selenium Wiki的入门页面进入,则有一个selenium-release.storage.googleapis.com的下载链接。例如3.8 版本目录特性:

[DIR]   selenium-server-3.8.1.zip               2017-12-01 19:21:38 20.58MB 
[DIR]   selenium-server-standalone-3.8.1.jar    2017-12-01 19:17:06 21.79MB 

所以确实有两个版本。这似乎是一个包装问题:

selenium-server-3.8.1.zip包含一个文件和作为文件的selenium-3.8.1-nodeps.jar依赖类.jar(“zip 中的 jars”):

   ..
  ---x------     63504   1-Feb-1985  00:00:00  libs/jcommander-1.48.jar
   ..
  ---x------    857721   1-Feb-1985  00:00:00  selenium-3.8.1-nodeps-sources.jar
  ---x------   2137810   1-Feb-1985  00:00:00  selenium-3.8.1-nodeps.jar

selenium-server-standalone-3.8.1.jar包含依赖类和它自己的类作为直接条目(“jar 中的类文件”):

  ..
 -rw-rw-rw-      1014  10-Apr-2015  19:45:56  com/beust/jcommander/DynamicParameter.class
 -rw-rw-rw-       237  10-Apr-2015  19:45:56  com/beust/jcommanderFuzzyMap$IKey.class
 -rw-rw-rw-      2910  10-Apr-2015  19:45:56  com/beust/jcommander/FuzzyMap.class
  ..
于 2018-01-26T16:03:07.867 回答
1

Selenium 是一个开源的 Web 应用程序自动化测试工具套件,提供跨平台和跨浏览器自动化工具。

Selenium 由多个软件工具组成,包括:- (1)。硒 IDE,(2)。硒 RC,(3)。Selenium WebDriver,(4)。硒网格

来到 Selenium Server,Selenium Server 是一个 Selenium RC(Remote Control) 组件,它启动和杀死浏览器,解释和运行测试程序传递的 Selenese 命令,并充当 HTTP 代理,拦截和验证传递的 HTTP 消息在浏览器和 AUT(被测应用程序)之间。

因此,需要 Selenium Server 在使用 Selenium Grid 的多台机器或 VM 上远程运行 Selenium RC 和 Selenium WebDriver 测试。

Selenium Server Standalone 是一个捆绑的 jar,包含 WebDriver API、Selenium Server 和 Selenium Grid,用于跨许多平台和浏览器在本地和远程运行测试。

于 2019-01-22T06:16:24.600 回答
1

需要 Selenium 服务器才能运行 Remote Selenium WebDriver。Selenium 3.X 不再能够直接运行 Selenium RC,而是通过仿真和 WebDriverBackedSelenium 接口来实现。

https://docs.seleniumhq.org/download/

所以,如果你使用Selenium RC,Selenium Server 就是你所需要的。如果你使用Selenium 3.X和更新,selenium-server-standalone 就是你所需要的。我有同样的问题,我找到了答案。

于 2019-01-28T08:12:46.153 回答