Часто есть необходимость запускать автоматизированные тесты для веб интерфейсов на Linux сервере без графической оболочки (например, на сервере непрерывной интеграции)
В сети есть хорошая инструкция, которую я себе добавил в закладки и решил поделиться со всеми: ссылочка
Краткая инструкция (на случай недоступности ссылки, в такие времена живём, на днях https://pypi.python.org лежал)
В сети есть хорошая инструкция, которую я себе добавил в закладки и решил поделиться со всеми: ссылочка
Краткая инструкция (на случай недоступности ссылки, в такие времена живём, на днях https://pypi.python.org лежал)
1. Устанавливаем все необходимые пакеты:
apt-get -y install xvfb x11-xkb-utils xfonts-100dpi \
xfonts-75dpi xfonts-scalable \
xfonts-cyrillic xserver-xorg-core
2. Настраиваем
Xvfb -fp /usr/share/fonts/X11/misc/ :22 -screen 0 1024x768x16 2>&1
export DISPLAY=:22
3. Готово, если запустить firefox + webdriver, то браузер запускается в виртуальном рабочем столе.
Более того, в качестве усовершенствования, я сделал запуск этих тестов с помощью tox. Теперь я просто захожу в дирректорию с тестами и выполняю команду "tox". По этой команде создаётся виртальное окружение, в котором выполняются все тесты. Очень удобно, особенно, для системы непрерывной интеграции или на случай, если заказчик хочет запустить тесты у себя.
Более того, в качестве усовершенствования, я сделал запуск этих тестов с помощью tox. Теперь я просто захожу в дирректорию с тестами и выполняю команду "tox". По этой команде создаётся виртальное окружение, в котором выполняются все тесты. Очень удобно, особенно, для системы непрерывной интеграции или на случай, если заказчик хочет запустить тесты у себя.
Только Xvfb не так стабилен как хотелось бы.. время от времени сигфолтится , оставляя после себя lock-файлы )
ОтветитьУдалить