问题
I have installed jenkins as a service on linux mint. I am trying to run tests written in python and script cannot run firefox. This line is a problem.
... self.browser = webdriver.Firefox() ...
When i log in as jenkins user, i can't run firefox. getting this error :
(process:3758): GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed No protocol specified No protocol specified Error: cannot open display: :0
Firefox works when i run it from my (logged in) user.
回答1:
Just install a virtual framebuffer in your machine and it will work.
Now i'm using Xvfb, but there are many others.
Here is some tutorials to setup your machine:
- http://www.installationpage.com/selenium/how-to-run-selenium-headless-firefox-in-ubuntu/
- http://www.labelmedia.co.uk/blog/setting-up-selenium-server-on-a-headless-jenkins-ci-build-machine.html
Also, there is this plugin: https://wiki.jenkins-ci.org/display/JENKINS/Xvfb+Plugin
来源:https://stackoverflow.com/questions/30707457/jenkins-cannot-run-firefox-no-protocol-specified-error-cannot-open-display-0