使用Xvfb在无头模式下进行硒测试

时间:2011-01-11 04:35:10

标签: selenium

我需要使用Xvfb以无头模式运行selenium测试,在pom.xml中我有:

      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>selenium-maven-plugin</artifactId>
        <version>1.1</version>

        <executions>
            <execution>
                <id>xvfb</id>
                <phase>pre-integration-test</phase>
                <goals>
                    <goal>xvfb</goal>
                </goals>
                <!-- 
                <configuration>
                    <display>:2</display>
                </configuration>
                    -->
            </execution>

            <execution>
                <id>selenium</id>
                <phase>pre-integration-test</phase>
                <goals>
                    <goal>start-server</goal>
                </goals>
                <configuration>
                    <background>true</background>
                </configuration>
            </execution>
        </executions>
      </plugin>

当我运行mvn integration-test时,它无法加载Xvfb,selenium测试仍然在firefox中运行,我检查了以下内容:

(EE) AIGLX error: dlopen of /usr/X11/lib/dri/swrast_dri.so failed (dlopen(/usr/X11/lib/dri/swrast_dri.so, 5): image not found)
(EE) GLX: could not load software renderer
(EE) XKB: Couldn't open rules file /usr/X11/share/X11/xkb/rules/base
(EE) XKB: No components provided for device Virtual core keyboard

任何人都知道这意味着什么?感谢。

3 个答案:

答案 0 :(得分:6)

将-extension GLX添加到Xvfb命令行可能会删除前两个错误。

答案 1 :(得分:4)

我发现我的设置中缺少台面驱动程序。

yum install mesa-dri-drivers 

解决了这个问题。

答案 2 :(得分:3)

在Debian / Ubuntu中,软件包是“libgl1-mesa-dri”,如:

apt-get install libgl1-mesa-dri