[Python-checkins] Enable GUI testing on Travis Linux builds via Xvfb (GH-7887)

Zachary Ware webhook-mailer at python.org
Wed Jul 11 15:10:04 EDT 2018


https://github.com/python/cpython/commit/b12112b5ba608cdd7a0962a6b18cad4fe58b46e6
commit: b12112b5ba608cdd7a0962a6b18cad4fe58b46e6
branch: master
author: Zachary Ware <zachary.ware at gmail.com>
committer: GitHub <noreply at github.com>
date: 2018-07-11T14:09:58-05:00
summary:

Enable GUI testing on Travis Linux builds via Xvfb (GH-7887)

files:
M .travis.yml

diff --git a/.travis.yml b/.travis.yml
index beecff2e6abf..90989f51af68 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -40,6 +40,10 @@ matrix:
       # compiler here and the other to run the coverage build. Clang is preferred
       # in this instance for its better error messages.
       env: TESTING=cpython
+      addons:
+        apt:
+          packages:
+            - xvfb
     - os: linux
       language: python
       # Build the docs against a stable version of Python so code bugs don't hold up doc-related PRs.
@@ -70,6 +74,7 @@ matrix:
         apt:
           packages:
             - lcov
+            - xvfb
       before_script:
         - ./configure
         - make coverage -s -j4
@@ -79,7 +84,7 @@ matrix:
         - ./venv/bin/python -m test.pythoninfo
       script:
         # Skip tests that re-run the entire test suite.
-        - ./venv/bin/python -m coverage run --pylib -m test --fail-env-changed -uall,-cpu -x test_multiprocessing_fork -x test_multiprocessing_forkserver -x test_multiprocessing_spawn -x test_concurrent_futures
+        - xvfb-run ./venv/bin/python -m coverage run --pylib -m test --fail-env-changed -uall,-cpu -x test_multiprocessing_fork -x test_multiprocessing_forkserver -x test_multiprocessing_spawn -x test_concurrent_futures
       after_script:  # Probably should be after_success once test suite updated to run under coverage.py.
         # Make the `coverage` command available to Codecov w/ a version of Python that can parse all source files.
         - source ./venv/bin/activate
@@ -150,7 +155,7 @@ script:
   # Check that all symbols exported by libpython start with "Py" or "_Py"
   - make smelly
   # `-r -w` implicitly provided through `make buildbottest`.
-  - make buildbottest TESTOPTS="-j4 -uall,-cpu"
+  - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then XVFB_RUN=xvfb-run; fi; $XVFB_RUN make buildbottest TESTOPTS="-j4 -uall,-cpu"
 
 notifications:
   email: false



More information about the Python-checkins mailing list