请保护ChromeDriver及相关测试框架使用的端口,防止被恶意代码访问

Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code

我正在尝试 运行 在远程机器 (macOS sierraO) 上进行 Jmeter 测试。 我配置了jp@gc - Chrome Driver Config,可以连接从机。但是,每当我尝试 运行 它时,我都会得到

Starting ChromeDriver 73.0.3683.20 (XXXXXXX) on port XXXX
Only local connections are allowed.
Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code.
Mar 08, 2019 12:12:35 PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: OSS
Using local port: XXXXXX
2019-03-08 13:04:39.171 java[10402:23852395] IMKInputSession [0x7f8bcbaaf740 presentFunctionRowItemTextInputViewWithEndpoint:completionHandler:] : [self textInputContext]=0x7f8bcbb578f0 *NO* NSRemoteViewController to client, NSError=Error Domain=NSCocoaErrorDomain Code=4099 "The connection from pid 0 was invalidated from this process." UserInfo={NSDebugDescription=The connection from pid 0 was invalidated from this process.}, com.apple.inputmethod.EmojiFunctionRowItem

我知道这与 security consideration 有关,但我找不到解决我的用例的方法。

我的用例是: 我正在 运行ning jmeter 测试使用:

  1. 运行 直接来自 Jmeter 5.1 的远程服务器
  2. 运行 使用 java-maven-plugin 项目。

如有任何关于如何在远程服务器上将 chromeDriver 配置为 运行 的想法,我们将不胜感激。

我无法直接从 p@gc - Chrome Driver Configchromedriver 传递任何参数,我的配置如下:

我的 chromedriver.dir 在哪里 chromedirver.dir=vu.chromedriver.dir=/path/to/chromedriver 但是,我可以通过添加以下内容来解决它:

  1. workaround.sh 适用于 macOS

    #!/usr/bin/env bash /path/to/chromedriver --whitelist-ip $*

  2. workaround.bat 对于 Windows

    \src\path\to\chromedriver.exe --whitelist-ip %*

这解决了我让 chromedriver 接受远程连接的问题。

租赁保护Chrome驱动程序和相关测试框架使用的端口,以防止恶意代码访问。

解决方法: 获取您的 Chrome 浏览器版本并下载特定于该版本的 Chrome 驱动程序。

打开您的 Chrome 浏览器 > 单击 3 个垂直点(右上角)> 帮助 > 关于 Google Chrome

验证 Chrome 版本(例如 73 或 74 或其他..)

转到 Selenium 浏览器驱动程序下载门户并下载 Chrome 该版本的驱动程序

https://sites.google.com/a/chromium.org/chromedriver/downloads

我遇到了同样的问题。我通过更改为 Chromedriver 版本 80.0.3987.106

来修复