硒和无头环境

时间:2010-12-02 13:54:06

标签: exception selenium environment headless robotframework

我最近在Red Hat Server上安装了Python 2.7,Robot Framework和Selenium Library(我仍然不知道我是否成功了......),以便在Web应用程序上运行一些测试。

所以我尝试了一个使用Robot Framework的简单测试用例来查看Selenium Library是否正常运行,只是打开一个网页,仅此而已......

Selenium Server根据ps的结果启动并运行,Firefox二进制文件位于PATH ...

从Robot Framework运行测试用例(使用pybot testcasename.tsv)我得到一个例外:

  

错误:将截图捕获到字符串时出现问题:java.awt.AWTException:无头环境

那么,无头环境是什么?有没有人知道是否还有其他东西需要安装或配置?

2 个答案:

答案 0 :(得分:18)

使用X虚拟帧缓冲区(Xvfb):

我们可以使用xvfb为selenium创建一个无头环境(例如,通过SSH运行)。


说明:

  1. 使用以下选项启动xvfb

    $ Xvfb :89 -ac -noreset

    (其中:89是创建的虚拟“显示”。

  2. 然后,将DISPLAY变量设置为此虚拟显示:

    $ export DISPLAY=:89

  3. 此时,我们可以根据需要运行selenium服务器。示例如下。

  4. 运行服务器Java存档:

    $ java -jar selenium-server.jar

    在Python中:

    from selenium import webdriver
    
    driver = webdriver.Firefox()
    ...
    

答案 1 :(得分:0)

以下是a simple Robot library仅用于此目的。