Skip to content

Commit d0124a4

Browse files
Update how Selenium Manager is described (SeleniumHQ#1390)[deploy site]
* Update how Selenium Manager is described [deploy site] * fix links --------- Co-authored-by: Sri Harsha <[email protected]>
1 parent 13abc32 commit d0124a4

36 files changed

+1412
-937
lines changed

website_and_docs/content/blog/2022/introducing-selenium-manager.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -49,12 +49,12 @@ ecosystem emerged. Such as: [WebDriverManager](https://bonigarcia.dev/webdriverm
4949
[WebDriverManager.Net](https://github.com/rosolko/WebDriverManager.Net) for C#.
5050

5151
All these projects served as an
52-
[inspiration]({{< ref "../../documentation/webdriver/getting_started/install_drivers.md#2-driver-management-software" >}})
52+
[inspiration]({{< ref "../../documentation/webdriver/troubleshooting/errors/driver_location.md#driver-management-libraries" >}})
5353
and as a clear sign that the community needed this feature to be
5454
built-in Selenium. In addition, a [survey](https://www.selenium.dev/blog/2021/selenium-survey-results/)
5555
done on January 2021 showed that most Selenium users want to get rid of the driver management
5656
problem. Plus, the fact that the
57-
[driver installation](https://www.selenium.dev/documentation/webdriver/getting_started/install_drivers/) page is
57+
[driver installation](https://www.selenium.dev/documentation/webdriver/troubleshooting/errors/driver_location/) page is
5858
by far the most visited one in the Selenium documentation.
5959

6060
### Selenium Manager in detail

website_and_docs/content/documentation/grid/getting_started.en.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ aliases: [
1616
* Java 11 or higher installed
1717
* Browser(s) installed
1818
* Browser driver(s)
19-
* If using Selenium 4.6, Selenium Manager will configure the drivers for Chrome, Firefox, and Edge [if they are not found on the `PATH`]({{< ref "../webdriver/getting_started/install_drivers.md#1-selenium-manager-beta" >}}).
20-
* [Installed and on the `PATH`]({{< ref "../webdriver/getting_started/install_drivers.md#3-the-path-environment-variable" >}})
19+
* [Selenium Manager]({{< ref "../selenium_manager/" >}}) will configure the drivers automatically if you add `--selenium-manager true`.
20+
* [Installed and on the `PATH`]({{< ref "../webdriver/troubleshooting/errors/driver_location.md#use-the-path-environment-variable" >}})
2121
* Download the Selenium Server jar file from the [latest release](https://github.com/SeleniumHQ/selenium/releases/latest)
2222
1. Start the Grid
2323
* `java -jar selenium-server-<version>.jar standalone`
@@ -47,7 +47,7 @@ single machine.
4747
**Standalone** is also the easiest mode to spin up a Selenium Grid. By default, the server
4848
will listen for `RemoteWebDriver` requests on [http://localhost:4444](http://localhost:4444).
4949
By default, the server will detect the available drivers that it can use from the System
50-
[`PATH`]({{< ref "../webdriver/getting_started/install_drivers.md#3-the-path-environment-variable" >}}).
50+
[`PATH`]({{< ref "../webdriver/troubleshooting/errors/driver_location.md#use-the-path-environment-variable" >}}).
5151

5252
```shell
5353
java -jar selenium-server-<version>.jar standalone
@@ -84,7 +84,7 @@ By default, the server will listen for `RemoteWebDriver` requests on [http://loc
8484
#### Node
8585

8686
During startup time, the **Node** will detect the available drivers that it can use from the System
87-
[`PATH`]({{< ref "../webdriver/getting_started/install_drivers.md#3-the-path-environment-variable" >}}).
87+
[`PATH`]({{< ref "../webdriver/troubleshooting/errors/driver_location.md#use-the-path-environment-variable" >}}).
8888

8989
The command below assumes the **Node** is running on the same machine where the **Hub** is running.
9090
```shell

website_and_docs/content/documentation/grid/getting_started.ja.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ aliases: [
1818
- Java 11 もしくはそれ以上がインストールされていること
1919
- ブラウザーがインストールされていること
2020
- ブラウザードライバー
21-
- Selenium 4.6 を使用していれば、Chrome, Firefox, Edge ドライバーが [`PATH` から見つからない場合]({{< ref "../webdriver/getting_started/install_drivers.md#1-selenium-manager-beta" >}}) Selenium Manager がドライバーを設定します。
22-
- [`PATH` が通っているインストール済みのもの]({{< ref "../webdriver/getting_started/install_drivers.md#3-the-path-environment-variable" >}})
21+
- [Selenium Manager]({{< ref "../selenium_manager/" >}}) will configure the drivers automatically if you add `--selenium-manager true`.
22+
- [`PATH` が通っているインストール済みのもの]({{< ref "../webdriver/troubleshooting/errors/driver_location.md#use-the-path-environment-variable" >}})
2323
- [最新の](https://github.com/SeleniumHQ/selenium/releases/latest) Selenium Server jar ファイルをダウンロードしていること
2424

2525
1. Grid の起動
@@ -47,7 +47,7 @@ Grid は 6 つの異なる[コンポーネント]({{< ref "components.md" >}})
4747

4848
**スタンドアロン**は Selenium Grid を起動する最も簡単な方法でもあります。
4949
デフォルトではサーバーは[http://localhost:4444](http://localhost:4444)`RemoteWebDriver` リクエストをリッスンします。
50-
サーバーはデフォルトでシステム[パス]({{< ref "../webdriver/getting_started/install_drivers.md#3-the-path-environment-variable" >}})上の利用可能なドライバーを検出します。
50+
サーバーはデフォルトでシステム[パス]({{< ref "../webdriver/troubleshooting/errors/driver_location.md#use-the-path-environment-variable" >}})上の利用可能なドライバーを検出します。
5151

5252
```shell
5353
java -jar selenium-server-<version>.jar standalone
@@ -83,7 +83,7 @@ java -jar selenium-server-<version>.jar hub
8383

8484
#### ノード
8585

86-
**ノード**は起動時にシステムの[パス]({{< ref "../webdriver/getting_started/install_drivers.md#3-the-path-environment-variable" >}})
86+
**ノード**は起動時にシステムの[パス]({{< ref "../webdriver/troubleshooting/errors/driver_location.md#use-the-path-environment-variable" >}})
8787
が通っている利用可能なドライバーを検出します。
8888

8989
次のコマンドは**ノード****ハブ**と同じマシン上で動作していることを前提としています。

website_and_docs/content/documentation/grid/getting_started.pt-br.md

+4-3
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@ aliases: [
1717
* Java 11 ou superior instalado
1818
* Navegador(es) instalados
1919
* Drivers do(s) navegador(es)
20-
* Se usar o Selenium 4.6, o Selenium Manager irá configurar os navegadores Chrome, Firefox e Edge [se não forem encontrados no `PATH`]({{< ref "../webdriver/getting_started/install_drivers.md#1-gerenciador-selenium-smallbetasmall" >}}).
20+
* [Selenium Manager]({{< ref "../selenium_manager/" >}}) will configure the drivers automatically if you add `--selenium-manager true`.
21+
* [Installed and on the `PATH`]({{< ref "../webdriver/troubleshooting/errors/driver_location.md#use-the-path-environment-variable" >}})
2122
* Obter o ficheiro Selenium Server Jar a partir da [última release](https://github.com/SeleniumHQ/selenium/releases/latest)
2223
1. Iniciar a Grid
2324
* `java -jar selenium-server-<version>.jar standalone`
@@ -45,7 +46,7 @@ comando, num único processo. **Standalone** só funcionará numa única máquin
4546
**Standalone** é também a forma mais simples de colocar uma Selenium Grid em funcionamento.
4647
Por omissão, o servidor irá escutar por pedidos `RemoteWebDriver` em [http://localhost:4444](http://localhost:4444).
4748
O servidor irá também detectar os drivers disponíveis no
48-
[`PATH`]({{< ref "../webdriver/getting_started/install_drivers.md#3-a-variável-de-ambiente--path" >}}).
49+
[`PATH`]({{< ref "../webdriver/troubleshooting/errors/driver_location.md#3-a-variável-de-ambiente--path" >}}).
4950

5051
```shell
5152
java -jar selenium-server-<version>.jar standalone
@@ -81,7 +82,7 @@ Por omissão, o servidor irá estar à escuta por pedidos de sessão `RemoteWebD
8182
#### Node
8283

8384
Ao iniciar, o **Node** irá detectar os drivers disponíveis através do
84-
[`PATH`]({{< ref "../webdriver/getting_started/install_drivers.md#3-a-variável-de-ambiente--path" >}}).
85+
[`PATH`]({{< ref "../webdriver/troubleshooting/errors/driver_location.md#3-a-variável-de-ambiente--path" >}}).
8586

8687
O comando exemplo seguinte assume que o **Node** está a executar na mesma máquina onde o **Hub** está em execução.
8788
```shell

website_and_docs/content/documentation/grid/getting_started.zh-cn.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ aliases: [
2626
* 需要安装 Java 11 或更高版本
2727
* 需要安装浏览器
2828
* 需要安装浏览器驱动程序
29-
* 如果使用 Selenium 4.6,Selenium Manager 将为 Chrome、Firefox 和 Edge 配置驱动程序[(如果它们在 PATH 上找不到)]({{< ref "../webdriver/getting_started/install_drivers.md#1-selenium-manager-smallbetasmall" >}}).
30-
* [需要已经安装并配置了 PATH 环境变量]({{< ref "../webdriver/getting_started/install_drivers.md#3-path-环境变量" >}})
29+
* [Selenium Manager]({{< ref "../selenium_manager/" >}}) will configure the drivers automatically if you add `--selenium-manager true`.
30+
* [需要已经安装并配置了 PATH 环境变量]({{< ref "../webdriver/troubleshooting/errors/driver_location.md#3-path-环境变量" >}})
3131
*[最新的发布版本](https://github.com/SeleniumHQ/selenium/releases/latest)下载 Selenium Server jar 文件
3232
1. 启动 Grid
3333
* `java -jar selenium-server-<version>.jar standalone`
@@ -49,7 +49,7 @@ Grid由六个不同的[组件]({{< ref "components.md" >}})组成,这使您可
4949

5050
**Standalone** 可以将所有 Grid [组件]({{< ref "components.md" >}}) 无缝地整合成一个单独的实体。在 **Standalone** 模式下运行 Grid,只需一个命令即可获得一个完整的 Grid,并在一个进程中运行。**Standalone** 只能在一台机器上运行。
5151

52-
**Standalone** 模式也是最容易启动 Selenium Grid 的模式。默认情况下,服务器将在 [http://localhost:4444](http://localhost:4444) 上监听 `RemoteWebDriver` 请求,并且服务器将从系统 [PATH]({{< ref "../webdriver/getting_started/install_drivers.md#3-path-环境变量" >}}) 中检测可以使用的驱动程序。
52+
**Standalone** 模式也是最容易启动 Selenium Grid 的模式。默认情况下,服务器将在 [http://localhost:4444](http://localhost:4444) 上监听 `RemoteWebDriver` 请求,并且服务器将从系统 [PATH]({{< ref "../webdriver/troubleshooting/errors/driver_location.md#3-path-环境变量" >}}) 中检测可以使用的驱动程序。
5353

5454
```shell
5555
java -jar selenium-server-<version>.jar standalone
@@ -83,7 +83,7 @@ java -jar selenium-server-<version>.jar hub
8383

8484
#### Node
8585

86-
在启动时,**Node**将从系统的[`PATH`]({{< ref "../webdriver/getting_started/install_drivers.md#3-path-环境变量" >}})中检测可用的驱动程序。
86+
在启动时,**Node**将从系统的[`PATH`]({{< ref "../webdriver/troubleshooting/errors/driver_location.md#3-path-环境变量" >}})中检测可用的驱动程序。
8787

8888
以下命令假设**Node**正在运行的机器与**Hub**在同一台机器上。
8989

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
---
2+
title: "Selenium Manager (Beta)"
3+
linkTitle: "Selenium Manager"
4+
weight: 11
5+
description: >
6+
The Selenium Manager is a binary generated with Rust that manages driver installation.
7+
---
8+
9+
## Applicability
10+
11+
***Selenium bindings use this tool by default, so you do not need to download it or
12+
add anything to your code or do anything else to use it.***
13+
14+
If, however, you need to access drivers with `curl` or a REST client,
15+
use one of the unofficial Selenium implementations,
16+
have special network requirements, or just want to better
17+
understand what the tool is doing, please continue reading.
18+
19+
## Usage
20+
21+
The Selenium bindings use the Manager automatically so long as the following conditions are met:
22+
* The driver location isn't specified in a `Service` class
23+
* A 3rd party driver manager is not installed
24+
* No drivers exist in directories included in the `PATH` Environment Variable
25+
26+
To use it with Selenium Grid:
27+
* Start the grid with this additional argument: `--selenium-manager true`
28+
29+
## Status
30+
31+
This tool is still in beta, and Selenium is slowly adding support for its features.
32+
The current implementation is a "fall-back" option, which means it should only get used
33+
if the code execution would otherwise fail. So long as you specify the location of the
34+
driver in the appropriate [Service class]({{< ref "webdriver/drivers/service.md" >}})
35+
(or using System Properties in Java), the Selenium Manager will not be used.
36+
37+
### History
38+
39+
The first implementation of Selenium Manager was released in Selenium 4.6. We
40+
made an announcement about it [on our blog](https://www.selenium.dev/blog/2022/introducing-selenium-manager/).
41+
42+
* Selenium 4.7 added support for IE Driver and improved error logging
43+
* Selenium 4.8 added support for beta and development versions of browsers
44+
* Selenium 4.9 added support for locating drivers based on provided location of browser binary
45+
46+
### Future
47+
48+
We are tracking the various features as a [GitHub Project](https://github.com/orgs/SeleniumHQ/projects/5/views/1).
49+
The major features we are looking to support:
50+
* Proxies
51+
* Warning/fixing problems with drivers on `PATH`
52+
* Browser downloads based on `browserVersion` provided in capabilities
53+
54+
## Configuration
55+
56+
Specific values can be overridden by specifying environment variables or by using a config file
57+
located by default at `~/.cache/selenium/selenium-manager-config.toml`.
58+
59+
| CLI | Env Variable | Config File |
60+
|----------------------------------|----------------------------------------------------|-----------------------------------------------------|
61+
| --browser chrome | SE_BROWSER=chrome | browser = "chrome" |
62+
| --driver chromedriver | SE_DRIVER=chromedriver | driver = "chromedriver" |
63+
| --browser-version 106 | SE_BROWSER_VERSION=106 | browser-version = "106" |
64+
| --driver-version 106.05249.61 | SE_DRIVER_VERSION=106.0.5249.61 | driver-version = "106.0.5249.61" |
65+
| --browser-path /path/to/chromium | SE_BROWSER_PATH=/path/to/chromium | browser-path = "/path/to/chromium" |
66+
| | SE_OS=macos | os = "macos" |
67+
| | SE_ARCH=x64 | arch = "x64" |
68+
| --proxy user@pass:myproxy:8080 | SE_PROXY=user@pass:myproxy:8080 | proxy = "user@pass:myproxy:8080" |
69+
| --browser-ttl 0 | SE_BROWSER_TTL=0 | browser-ttl = 0 |
70+
| --driver-ttl 86400 | SE_DRIVER_TTL=86400 | driver-ttl = 86400 |
71+
| | SE_DRIVER_MIRROR=http://my-chromedriver-mirror.net | driver-mirror = "http://my-chromedriver-mirror.net" |
72+
| --clear-cache | | |
73+
| --clear-metadata | | |
74+
| | SE_CACHE_PATH=/my/custom/cache | cache-path = "/my/custom/cache" |
75+
| --debug | SE_DEBUG=true | debug true |
76+
| --trace | SE_TRACE=true | |
77+
78+
## Development
79+
80+
Selenium Manager is written in Rust and compiled into binaries using GitHub Actions.

0 commit comments

Comments
 (0)