Установить свойство среды для ChromeDriver программно - PullRequest
3 голосов
/ 11 октября 2011

Я запускаю тесты с 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 ]

8 голосов
/ 23 февраля 2012

похоже, что это исправили (по крайней мере сейчас)

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 голос
/ 22 августа 2012

другой непрограммный подход, перейдите к / etc / chromium / default (или / etc / chromium-browser / default или аналогичный, зависит от дистрибутива) и установите отображение там :

CHROMIUM_FLAGS="--display :99"
...