Testing and Continuous Integration
To get automated tests of GTK code running on a headless server use Xvfb
(virtual framebuffer X server). It provides the xvfb-run -a
command which
creates a temporary X server without the need for any real display hardware.
xvfb-run -a python my_script.py
Continuous Integration using Travis CI / CircleCI
Travis CI uses a rather old Ubuntu and thus the supported GTK is at 3.18 and PyGObject is at 3.20. If that’s enough for you then have a look at our Travis CI example project:
To get newer PyGObject, GTK, etc. working on Travis CI or CircleCI you can use Docker with an image of your choosing. Have a look at our Docker example project which runs tests on various Debian, Ubuntu and Fedora versions: