标志¶
--allow-hosts ALLOW_HOSTS…¶
允许传入请求的 Host 标头值。
默认情况下,允许 HOST 的值。如果提供了 --allow-hosts,则只允许给定的值。例如 --allow-host geckodriver.test webdriver.local 将允许 Host 设置为 geckodriver.test 或 webdriver.local 的请求。
将 Host 设置为 IP 地址的请求始终允许。
--allow-origins ALLOW_ORIGINS…¶
允许传入请求的 Origin 标头值。
对于所有 POST 请求以及大多数其他跨源请求,Web 浏览器都会设置 Origin。默认情况下,拒绝任何带有 Origin 标头的请求,以防止恶意网站尝试访问本地机器上运行的 geckodriver。
如果提供了 --allow-origins,则在给定来源上运行的 Web 服务将能够向 geckodriver 发出请求。例如 --allow-origins https://webdriver.test:8080 将允许方案为 https、主机名为 webdriver.test 且端口为 8080 的来源上的基于 Web 的服务访问 geckodriver 实例。
--android-storage ANDROID_STORAGE¶
**弃用警告**:此参数已弃用,计划在 geckodriver 的 0.31.0 版本中删除。因此,在 0.30.0 或更高版本中不应再使用它。默认情况下,自动检测现在将使用外部存储位置,该位置始终可读写。
选择 Android 设备上的测试数据位置,例如 Firefox 配置文件。默认情况下,使用 auto。
| 值 | 描述 |
|---|---|
| auto | 根据设备是否已 root 选择最合适的位置。 如果设备已 root,则使用 `internal`,否则使用 `app`。 |
| app | 位置:`/data/data/%androidPackage%/test_root` 基于创建新会话时作为 `moz:firefoxOptions` 的一部分传递的 `androidPackage` 功能。更改应用程序目录中数据的命令使用 run-as 执行。这要求安装的应用程序可调试。 |
| internal | 位置:`/data/local/tmp/test_root` 设备必须已 root,因为当应用程序运行时,在配置文件中创建的文件(归应用程序用户所有)无法由 shell 用户更改。命令将通过 `su` 执行。 |
| sdcard | 位置:`$EXTERNAL_STORAGE/Android/data/%androidPackage%/files/test_root` 无论设备是否已 root,此位置都受所有版本的 Android 支持。 |
-b BINARY / --binary BINARY¶
要使用的 Firefox 二进制文件的路径。默认情况下,geckodriver 会尝试查找并使用 Firefox 的系统安装,但可以通过使用此选项来更改此行为。请注意,当 创建新会话 时传递的 moz:firefoxOptions 对象的 binary 功能将覆盖此选项。
在 Linux 系统上,它将使用通过搜索 PATH 环境变量找到的第一个 firefox 二进制文件,这大致等同于调用 whereis(1) 并提取第二列
% whereis firefox
firefox: /usr/bin/firefox /usr/local/firefox
在 macOS 上,通过以与 Linux 系统相同的方式查找第一个 firefox 二进制文件来查找二进制文件。这意味着也可以使用 PATH 来控制 geckodriver 应该在 macOS 上查找 Firefox 的位置。然后它将查找 /Applications/Firefox.app。
在 Windows 系统上,geckodriver 通过扫描 Windows 注册表来查找系统 Firefox。
--connect-existing¶
将 geckodriver 连接到现有的 Firefox 实例。这意味着 geckodriver 将放弃启动新 Firefox 会话的默认行为。
现有的 Firefox 实例必须启用了 Marionette。要在 Firefox 中启用远程协议,可以传递 --marionette 标志。除非已用户设置 marionette.port 首选项,否则 Marionette 将在端口 2828 上侦听。因此,当使用 --connect-existing 时,您可能还需要使用 --marionette-port 来设置正确的端口。
--host HOST¶
用于 WebDriver 服务器的主机。默认为 127.0.0.1。
--jsdebugger¶
在 Firefox 启动时附加 浏览器工具箱 调试器。这对于调试 Marionette 内部很有用。
要在测试运行开始时或测试之间提示,可以将 marionette.debugging.clicktostart 首选项设置为 true。
作为参考,以下是启用 Chrome 调试器的首选项列表。在将参数传递给 geckodriver 时,所有这些都隐式设置。
devtools.browsertoolbox.panel->jsdebugger默认情况下选择调试器面板。
devtools.chrome.enabled→ true启用 Chrome 代码的调试。
devtools.debugger.prompt-connection→ false控制远程连接提示。请注意,这将自动将您的 Firefox 实例公开到 localhost。
devtools.debugger.remote-enabled→ true允许远程调试器连接,这对于调试 Chrome 代码是必要的。
--log LEVEL¶
设置 Gecko 和 geckodriver 日志级别。可能的值为 fatal、error、warn、info、config、debug 和 trace。
--log-no-truncate¶
禁用长日志行的截断。
--marionette-host HOST¶
选择 geckodriver 连接到 Marionette 远程协议的主机。默认为 127.0.0.1。
--marionette-port PORT¶
选择 geckodriver 连接到 Marionette 远程协议的端口。
在 geckodriver 启动并管理 Firefox 进程的默认模式下,它将选择系统分配的空闲端口,并在配置文件中设置 marionette.port 首选项。
当使用 --connect-existing 且 Firefox 进程不受 geckodriver 控制时,它将简单地连接到 PORT。
--connect-existing: #connect-existing
-p PORT / --port PORT¶
用于 WebDriver 服务器的端口。默认为 4444。
一个有用的技巧是,可以绑定到 0 以使系统原子地分配一个空闲端口。
--profile-root PROFILE_ROOT¶
创建临时配置文件时要使用的目录的路径。默认情况下,这是系统临时目录。geckodriver 和 Firefox 都必须对此路径具有读写访问权限。
当 Firefox 与主机文件系统隔离以使其不与 geckodriver 共享相同的系统临时目录时(例如,在容器内运行 Firefox 或作为快照打包时),此设置很有用。
-v[v]¶
当传递单个 -v 时,将日志详细程度提高到调试级别,如果传递 -vv,则提高到跟踪级别。这类似于分别传递 --log debug 和 --log trace。
--websocket-portPORT¶
用于连接到 WebDriver BiDi 的端口。默认为 9222。
一个有用的技巧是,可以绑定到 0 以使系统原子地分配一个空闲端口。