如何使用Maven-Selenium插件中的selenese命令配置Selenium Server?

时间:2011-06-20 22:28:14

标签: maven-2 maven selenium maven-plugin selenium-webdriver

我正在尝试通过codehaus的Maven-Selenium插件配置selenese命令使用的selenium服务器。我试图在插件中创建多个执行,在预集成测试阶段启动服务器,但这不起作用。 selenium-server只是进入无限循环,监听端口。

我想知道是否有办法覆盖/配置selenese命令在插件中使用的selenium-server。请告诉我。

请参阅下面的POM代码段。

....
<properties>
    <selenium.version>2.0b3</selenium.version>
</properties>
<build>
    <plugins>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>selenium-maven-plugin</artifactId>
            <version>1.1</version>
            <dependencies>
                <dependency>
                    <groupId>org.seleniumhq.selenium</groupId>
                    <artifactId>selenium</artifactId>
                    <version>${selenium.version}</version>
                    <type>pom</type>
                    <exclusions>
                        <!-- prevent ant:ant versus org.apache.ant:ant collision -->
                        <exclusion>
                            <groupId>ant</groupId>
                            <artifactId>ant</artifactId>
                        </exclusion>
                    </exclusions>
                </dependency>
            </dependencies>
            <executions>
                <execution>
                    <id>Run-Script</id>
                    <phase>integration-test</phase>
                    <goals>
                        <goal>selenese</goal>
                    </goals>
                    <configuration>
                        <browser>*firefox</browser>
                        <suite>src/test/selenium/html/TestSuite.html</suite>
                        <startURL>http://localhost:4444/</startURL>
                        <results>${project.build.directory}/results/${browser.type}-${test.type}-results.html</results>
                        <port>4444</port>
                        <timeoutInSeconds>${selenium.server.timeout.seconds}</timeoutInSeconds>
                        <multiWindow>${multiple.windows}</multiWindow>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>
....

谢谢,

1 个答案:

答案 0 :(得分:0)

尝试将startURL设置为受测试应用程序的url,而不是指向selenium rc服务器url。例如,如果您的selenium测试用例点击谷歌上的链接,请将startURL设置为http://www.google.com

这是我工作的pom片段

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>selenium-maven-plugin</artifactId>
        <configuration>
      <browser>*firefox</browser>
      <startURL>http://my-site.com</startURL>
      <suite>test-suite</suite>
      <!-- <logOutput>true</logOutput> -->
      <!-- <timeoutInSeconds>30</timeoutInSeconds> -->
        </configuration>
<executions>
  <execution>
    <id>test</id>
        <phase>test</phase>
        <goals>
      <goal>selenese</goal>
        </goals>
  </execution>
</executions>
  </plugin>

**它的效果很好,除了在Mac OS上,firefox只是保持打开而不关闭?!但是,希望有所帮助。