Черные квадраты вместо скриншотов. Тесты запускаются от имени “Windows Service”

Как все построено:

  • есть CI (TeamCity) запущен под Win 7
  • сам CI и BuildAgent запускаются как servise
  • тесты написаны на JAVA + TestsNG + Webdriver

Тесты запускаются, бегут, все ок, но когда смотрю потом скриншоты упавших тестов то получаю черные квадраты.
Проблема ясна и описана здесь c# - .NET Windows 7 take screenshot not working when running under 'Windows Service' with 'Local System Account' - Stack Overflow

такой проблемы не было когда CI работал под управлением WinXP

Вопрос стоит в том какие варианты решения и обхода данной проблемы. Может кто сталкивался с таким.

Для примера покажу как делаю скриншот на java

private static void captureScreenshot(File outFile) throws Exception {
        BufferedImage image = new Robot().createScreenCapture(new Rectangle(Toolkit.getDefaultToolkit().getScreenSize()));
        ImageIO.write(image, "png", outFile);
    }

Одно из решений:

Ещё рекомендую на тему почитать:

  1. Использовать Selenium Grid и встроенные средства снятия скриншотов. Сам использую грид + Jenkins as Win Service. Никаких проблем со скринами не было и нет.
  2. Писать свой вэб-сервис, дергающий доп. тул снятия скринов. Вот тут на примере одноклассников рассказывают о гриде и почему пришли к использованию доп. сервисов.