微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

selenium-webdriver – Webdriver异常:“chrome无法访问”

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

*****下面是stacktrace的片段:*****

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

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

Test 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 Callbackbrowser>() {


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

browser.quit()

}

});

}
最佳答案
这是因为Chrome也在使用unix容器来运行.如果要在docker中运行它,请传递docker run命令

–privileged

否则,您可以启动Chrome

–no-sandBox

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐