selenium-webdriver - Webdriver 异常 : "chrome not reachable"

标签 selenium-webdriver docker webdriver selenium-chromedriver chrome-web-driver

我在 ubuntu 服务器中运行 selenium 测试用例,该服务器基本上在 firefox 和 chrome 中运行测试用例。 Firefox 启动和测试用例运行成功但 chrome 抛出异常:

*****下面是堆栈跟踪的片段:*****

在端口 21549 上启动 ChromeDriver (v2.8.240825)

PAC 支持被禁用,因为没有系统实现

测试 IntegrationTest.AdminUserelementscheck 失败:

org.openqa.selenium.WebDriverException: chrome 无法访问 (驱动信息:chromedriver=2.8.240825,platform=Linux 2.6.32-431.el6.x86_64 x86_64)(警告:服务器未提供任何堆栈跟踪信息) [错误] 命令持续时间或超时:20.83 秒


嗨,下面是我的代码的一小段:

public class IntegrationTest {

private static final String configFile="test.properties";

private final String FIREFOX="firefox";

private final String CHROME="chrome";

private final String PHANTOMJS="phantomjs";

private final String BROWSERNAME="browser";

private static Properties props = new Properties();

public WebDriver webDriver;

private static Configuration additionalConfigurations;


@BeforeClass

public static void setUp() throws IOException, SQLException{

props.load(IntegrationTest.class.getResourceAsStream("/" + configFile));
        }

@test

public void AdminUserelementscheck() throws SQLException, IOException {

String[] browsers = props.getProperty(BROWSERNAME).split(",");

System.out.println("Number of browsers specified in conf:"+props.getProperty(BROWSERNAME));

for(String browser:browsers){

System.out.println("Browser currently processing:"+browser);

if(browser.equalsIgnoreCase(FIREFOX))

webDriver = new FirefoxDriver();

else if(browser.equalsIgnoreCase(CHROME))

webDriver = new ChromeDriver();

else

webDriver = new PhantomJSDriver();

running(testServer(3333,fakeApplication()),webDriver, new Callback<TestBrowser>() {


********* LOGIN AND ASSERTION STATMENTS*******************

browser.quit()

}

});

}

最佳答案

这可能是因为 Chrome 也在使用 unix 容器来运行。如果您希望它在 docker 中运行,请传递 docker run 命令

--privileged

否则您可以使用

启动 Chrome

--no-sandbox

关于selenium-webdriver - Webdriver 异常 : "chrome not reachable",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28364012/

相关文章:

mysql - 安装卷时 Docker mysql 无法运行

javascript - 单击日期选择器元素,不是日历元素,而是同一 Pane 上的按钮

javascript - 如何使用 python 从带有 javascript 的网页中获取表格内容?

javascript - Selenium Webdriver Java : How to get the displayed value from a disabled dropdown list

docker-compose 失败 : Too many open files

java - 使用远程 'chromedriver.exe' 文件设置 Chrome WebDriver

python - 如何处理浏览器或应用程序可能不是 Web 驱动程序 Selenium python 的安全问题?

json - 在 Linux 上将 chromeOptions args 传递给 .json 文件中的 selenium 节点

java - Appium findElement 连续使用两次不工作

python - 如何在 Kubernetes pod 上使用带有 Django 的 sqlite3 数据库