Xvfb和Chromedriver有什么区别以及何时使用它们

时间:2017-01-04 09:21:21

标签: selenium selenium-webdriver webdriver selenium-chromedriver xvfb

您好我计划设置selenium来测试我的网络应用程序。

我已经读过chromedriver和Xvfb都可以用来运行测试。 我还读过Xvfb可以配置为使用chromdriver。

这让我感到困惑。 chromedriver和Xvfb在运行硒测试中扮演什么角色。

由于

1 个答案:

答案 0 :(得分:2)

  1. chromedriver - 在 chrome 浏览器(使用GUI)上运行测试。
  2. Xvfb - 以无头模式运行测试。可以是任何浏览器,包括chrome(浏览器GUI将不会显示,因此您可以使用该机器进行其他操作)。
  3. 代码段(python):

    Chrome驱动程序(下载here):

    browser = webdriver.Chrome() // to launch tests in Chrome browser.
    

    Xvfb - 使用pyvirtualdisplay(Xvfb的python包装器):

    from pyvirtualdisplay import Display
    from selenium import webdriver
    
    display = Display(visible=0, size=(800, 600))
    display.start()
    
    # now Chrome will run in a virtual display. 
    # you will not see the browser.
    browser = webdriver.Chrome()
    browser.get('http://www.google.com')
    print browser.title
    browser.quit()
    
    display.stop()
    

    参考文献:

    1. How do I run Selenium in Xvfb?