updated README
This commit is contained in:
parent
fa0a091197
commit
0ba1e22e46
55
README.rst
55
README.rst
|
@ -2,22 +2,22 @@
|
||||||
xvfbwrapper
|
xvfbwrapper
|
||||||
===============
|
===============
|
||||||
|
|
||||||
Python wrapper for running display inside X virtual framebuffer (Xvfb)
|
Python wrapper for running a display inside X virtual framebuffer (Xvfb)
|
||||||
|
|
||||||
* Home: http://cgoldberg.github.com/xvfbwrapper
|
* Home: http://cgoldberg.github.com/xvfbwrapper
|
||||||
* PyPI: http://pypi.python.org/pypi/xvfbwrapper
|
* PyPI: http://pypi.python.org/pypi/xvfbwrapper
|
||||||
* Dev: https://github.com/cgoldberg/xvfbwrapper
|
* Dev: https://github.com/cgoldberg/xvfbwrapper
|
||||||
|
|
||||||
----
|
***
|
||||||
|
|
||||||
*********************************
|
*****************************
|
||||||
Install xvfbwrapper from PyPI
|
Install xvfbwrapper from PyPI
|
||||||
*********************************
|
*****************************
|
||||||
|
|
||||||
::
|
::
|
||||||
|
|
||||||
pip install xvfbwrapper
|
pip install xvfbwrapper
|
||||||
|
|
||||||
|
****
|
||||||
|
|
||||||
**************************************
|
**************************************
|
||||||
About Xvfb (X Virtual Framebuffer)
|
About Xvfb (X Virtual Framebuffer)
|
||||||
|
@ -25,6 +25,8 @@ Python wrapper for running display inside X virtual framebuffer (Xvfb)
|
||||||
|
|
||||||
In the X Window System, Xvfb or X virtual framebuffer is an X11 server that performs all graphical operations in memory, not showing any screen output. This virtual server does not require the computer it is running on to even have a screen or any input device. Only a network layer is necessary.
|
In the X Window System, Xvfb or X virtual framebuffer is an X11 server that performs all graphical operations in memory, not showing any screen output. This virtual server does not require the computer it is running on to even have a screen or any input device. Only a network layer is necessary.
|
||||||
|
|
||||||
|
****
|
||||||
|
|
||||||
***********************
|
***********************
|
||||||
System Requirements
|
System Requirements
|
||||||
***********************
|
***********************
|
||||||
|
@ -32,14 +34,15 @@ In the X Window System, Xvfb or X virtual framebuffer is an X11 server that perf
|
||||||
* Xvfb (`sudo apt-get install xvfb`, or similar)
|
* Xvfb (`sudo apt-get install xvfb`, or similar)
|
||||||
* Python 2
|
* Python 2
|
||||||
|
|
||||||
|
****
|
||||||
|
|
||||||
************************
|
************************
|
||||||
Example: Basic Usage
|
Example: Basic Usage
|
||||||
************************
|
************************
|
||||||
|
|
||||||
::
|
::
|
||||||
|
|
||||||
from xvfbwrapper import Xvfb
|
from xvfbwrapper import Xvfb
|
||||||
|
|
||||||
vdisplay = Xvfb()
|
vdisplay = Xvfb()
|
||||||
vdisplay.start()
|
vdisplay.start()
|
||||||
|
|
||||||
|
@ -47,20 +50,19 @@ In the X Window System, Xvfb or X virtual framebuffer is an X11 server that perf
|
||||||
|
|
||||||
vdisplay.stop()
|
vdisplay.stop()
|
||||||
|
|
||||||
****************************************************
|
****
|
||||||
Example: Headless Selenium WebDriver and Firefox
|
|
||||||
****************************************************
|
|
||||||
|
|
||||||
* install selenium bindings: `pip install selenium`
|
**********************************************
|
||||||
* Firefox will launch inside virtual display (headless)
|
Example: Headless Selenium WebDriver Tests
|
||||||
* browser is not shown while test is run
|
**********************************************
|
||||||
|
|
||||||
::
|
::
|
||||||
|
#!/usr/bin/env python
|
||||||
from xvfbwrapper import Xvfb
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
from selenium import webdriver
|
from selenium import webdriver
|
||||||
|
from xvfbwrapper import Xvfb
|
||||||
|
|
||||||
|
import unittest
|
||||||
|
|
||||||
|
|
||||||
class TestHomepages(unittest.TestCase):
|
class TestHomepages(unittest.TestCase):
|
||||||
|
@ -68,22 +70,27 @@ In the X Window System, Xvfb or X virtual framebuffer is an X11 server that perf
|
||||||
self.vdisplay = Xvfb(width=1280, height=720)
|
self.vdisplay = Xvfb(width=1280, height=720)
|
||||||
self.vdisplay.start()
|
self.vdisplay.start()
|
||||||
self.browser = webdriver.Firefox()
|
self.browser = webdriver.Firefox()
|
||||||
|
|
||||||
def testUbuntuHomepage(self):
|
def testUbuntuHomepage(self):
|
||||||
self.browser.get('http://www.ubuntu.com')
|
self.browser.get('http://www.ubuntu.com')
|
||||||
self.assertIn('Ubuntu', self.browser.title)
|
self.assertIn('Ubuntu', self.browser.title)
|
||||||
|
|
||||||
def testGoogleHomepage(self):
|
def testGoogleHomepage(self):
|
||||||
self.browser.get('http://www.google.com')
|
self.browser.get('http://www.google.com')
|
||||||
self.assertIn('Google', self.browser.title)
|
self.assertIn('Google', self.browser.title)
|
||||||
|
|
||||||
def tearDown(self):
|
def tearDown(self):
|
||||||
self.browser.quit()
|
self.browser.quit()
|
||||||
self.vdisplay.stop()
|
self.vdisplay.stop()
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
unittest.main(verbosity=2)
|
unittest.main(verbosity=2)
|
||||||
|
|
||||||
----
|
This code uses `selenium` and `xvfbwrapper` to run a test with Firefox inside a Headless display.
|
||||||
|
|
||||||
|
* install selenium bindings: `pip install selenium`
|
||||||
|
* Firefox will launch inside virtual display (headless)
|
||||||
|
* browser is not shown while tests are run
|
||||||
|
|
||||||
|
****
|
||||||
|
|
Loading…
Reference in New Issue