From 0ba1e22e46205515817ddbb2d60cdbfeda0966a1 Mon Sep 17 00:00:00 2001 From: Corey Goldberg Date: Sun, 18 Nov 2012 12:15:32 -0500 Subject: [PATCH] updated README --- README.rst | 55 ++++++++++++++++++++++++++++++------------------------ 1 file changed, 31 insertions(+), 24 deletions(-) diff --git a/README.rst b/README.rst index 9ee9ad0..abc1754 100644 --- a/README.rst +++ b/README.rst @@ -2,22 +2,22 @@ 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 * PyPI: http://pypi.python.org/pypi/xvfbwrapper * Dev: https://github.com/cgoldberg/xvfbwrapper ----- +*** -********************************* - Install xvfbwrapper from PyPI -********************************* +***************************** +Install xvfbwrapper from PyPI +***************************** :: - pip install xvfbwrapper +**** ************************************** 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. +**** + *********************** 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) * Python 2 +**** + ************************ Example: Basic Usage ************************ :: - from xvfbwrapper import Xvfb - + vdisplay = Xvfb() vdisplay.start() @@ -47,20 +50,19 @@ In the X Window System, Xvfb or X virtual framebuffer is an X11 server that perf vdisplay.stop() -**************************************************** - Example: Headless Selenium WebDriver and Firefox -**************************************************** +**** -* install selenium bindings: `pip install selenium` -* Firefox will launch inside virtual display (headless) -* browser is not shown while test is run +********************************************** + Example: Headless Selenium WebDriver Tests +********************************************** :: - - from xvfbwrapper import Xvfb - - import unittest + #!/usr/bin/env python + from selenium import webdriver + from xvfbwrapper import Xvfb + + import unittest 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.start() self.browser = webdriver.Firefox() - + def testUbuntuHomepage(self): self.browser.get('http://www.ubuntu.com') self.assertIn('Ubuntu', self.browser.title) - + def testGoogleHomepage(self): self.browser.get('http://www.google.com') self.assertIn('Google', self.browser.title) - + def tearDown(self): self.browser.quit() self.vdisplay.stop() - - + + if __name__ == '__main__': 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 + +****