我正在尝试运行我的第一个硒测试,由于端口问题,无法调用浏览器。我的chrome浏览器版本为78.0.3904.97版(正式内部版本)(64位),我已经下载了最新的稳定版本:ChromeDriver 78.0.3904.70。运行脚本时,我看到以下错误。
启动ChromeDriver 78.0.3904.70 (edb9c9f3de0247fd912a77b7f6cae7447f6d3ad5-refs / branch-heads / 3904 @ {#800}) 在端口30211上仅允许本地连接。请保护端口 由ChromeDriver和相关测试框架使用,以防止 恶意代码。 [1573154573.453] [警告]:连接至超时 Chrome,正在重试... 2019年11月7日晚上7:22:56 org.openqa.selenium.remote.ProtocolHandshake createSession INFO: 检测到的方言:线程“ main”中的W3C异常 org.openqa.selenium.InvalidArgumentException:参数无效
(会话信息:chrome = 78.0.3904.97)构建信息:版本:'3.141.59', 修订:“ e82be7d358”,时间:“ 2018-11-14T08:25:48”
我已经下载了与chromebrowser版本兼容的最新chromedriver exe。
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class demo1 {
public static void main(String[] args) {
//invoke browser
System.setProperty("webdriver.chrome.driver",
"C:\\Users\\270816\\Documents\\Selenium-
installations\\chromedriver_win32\\chromedriver.exe");
//create browser object
WebDriver driver= new ChromeDriver();
//hit google.com
driver.get("www.bbc.co.uk");
错误消息:
启动ChromeDriver 78.0.3904.70 (edb9c9f3de0247fd912a77b7f6cae7447f6d3ad5-refs / branch-heads / 3904 @ {#800}) 在端口30211上仅允许本地连接。请保护端口 由ChromeDriver和相关测试框架使用,以防止 恶意代码。
答案 0 :(得分:1)
此错误消息...
[1573154573.453][WARNING]: Timed out connecting to Chrome, retrying...
Nov 07, 2019 7:22:56 PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: W3C Exception in thread "main" org.openqa.selenium.InvalidArgumentException: invalid argument
(Session info: chrome=78.0.3904.97) Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:48'
...表示 ChromeDriver 无法启动/产生新的 WebBrowser ,即 Chrome浏览器会话。
根据错误堆栈跟踪,对于错误的实际原因尚无定论。但是,当您使用时:
我怀疑问题出在测试系统
上的 JDK 版本确保:
@Test
。driver.quit()
方法内调用tearDown(){}
,以优雅地关闭和销毁 WebDriver 和 Web Client 实例。