Fake X-сервер для тестирования?

На работе мы полностью тестируем компоненты GUI. Проблема возникает из-за того, что, хотя testuite запущен, появляются различные компоненты, крадущие фокус или невозможность продолжить работу. Первое, что я подумал, это Xnest, но мне было интересно, есть ли более элегантное решение этой проблемы.

Ответ 1

Я думаю, что вам нужно сделать, чтобы ваши тесты запускались на другом дисплее, чем тот, над которым вы работаете.

Когда мы переместили агентов TeamCity в EC2, нам нужно было найти решение для запуска наших тестов на пользовательском интерфейсе на безголовом сервере Linux. Я нашел способ сделать это в этом сообщении в блоге, в котором описывается, как использовать Xvfb.

В моем случае все, что мне нужно было сделать, это:

  • yum install xorg-x11-server-Xvfb
  • Xvfb :100 -ac для запуска сервера. Я добавил это в свой файл rc.local для своих агентов EC2, чтобы запустить его при запуске машины.
  • Затем я добавил env.DISPLAY :100 в конфигурацию сборки TeamCity.