以编程方式为ChromeDriver设置环境属性

3

我正在使用SE2和firefoxDriver在无头环境(Xvfb)下进行测试。使用FirefoxDriver,我可以非常容易地设置DISPLAY环境属性:

     FirefoxBinary firefox = new FirefoxBinary(); 
     firefox.setEnvironmentProperty("DISPLAY",":"+DISPLAY); 
     FirefoxProfile firefoxProfile = new ProfilesIni().getProfile(Config.webDriverFirefoxProfile); 
     this.webDriver = new FirefoxDriver(firefox,firefoxProfile); 

如何使用ChromeDriver实现上述操作?
更新:目前似乎还无法实现!这里有一个类似的问题,解释了情况:ChromeDriver Headless
2个回答

9

看起来他们已经修复了这个问题(至少目前是这样)

service = new ChromeDriverService.Builder()
        .usingChromeDriverExecutable(new File("/path/to/chromedriver"))
        .usingAnyFreePort()
        .withEnvironment(ImmutableMap.of("DISPLAY",":20"))
        .build();

这是添加此方法的代码修订版本: http://code.google.com/p/selenium/source/detail?r=15232

1
另一种非编程方法是前往/etc/chromium/default(或类似的/etc/chromium-browser/default,具体取决于发行版),并在那里设置显示:
CHROMIUM_FLAGS="--display :99"

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接