Eclipse for Robot Framework(java版)项目:如何运行特定标签?

时间:2017-07-09 00:13:13

标签: eclipse robotframework ui-automation

我的项目使用Maven来引用所有需要的库,所以我甚至不需要手动安装机器人框架(我只是将markusbernhardt的 Selenium2Library 作为pom.xml中的依赖项包含在内):

  <dependencies>
    <dependency>
      <groupId>org.seleniumhq.selenium</groupId>
      <artifactId>selenium-java</artifactId>
      <version>3.4.0</version>
    </dependency>
    <dependency>
      <groupId>com.github.markusbernhardt</groupId>
      <artifactId>robotframework-selenium2library-java</artifactId>
      <version>1.4.0.8</version>
    </dependency>
  </dependencies>
  <build>
    <plugins>
      <plugin>
        <groupId>org.robotframework</groupId>
        <artifactId>robotframework-maven-plugin</artifactId>
        <version>1.4.7</version>
        <executions>
          <execution>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

我可以将我的测试作为Maven Install运行或使用Maven的运行配置:

Run as Maven Install

Run configuration

但是,我不知道如何告诉机器人框架我想运行用某些标签标记的测试。我没有从命令行运行机器人框架,因为我的机器中没有安装机器人框架,我只是将它用作maven依赖项,所以我无法运行python -m robot.run --include tag

我尝试在运行配置中添加--include tag作为参数,但它被忽略了。

有没有办法在Eclipse中将此标记参数发送给机器人?

1 个答案:

答案 0 :(得分:3)

刚刚发现了!留下信息,以防其他人帮助:

全部在pom.xml中:

添加<properties />第一级元素(在<project />内),其中包含您选择的属性名称和要运行的标记,如下所示:

<properties>
  <robot-tag>mytag</robot-tag>
</properties>

然后,在插件部分,在robotframework-maven-plugin plugin中 元素,添加:

<configuration>
  <includes>
    <include>${robot-tag}</include>
  </includes>
</configuration>

就是这样。不需要更改运行配置。该项目也可以作为Maven Install运行。

这就是我的pom.xml现在的样子(删除元素和项目特定信息,如groupID,artifactID等):

  <properties>
    <robot-tag>debug</robot-tag>
  </properties>
  <dependencies>
    <dependency>
      <groupId>org.seleniumhq.selenium</groupId>
      <artifactId>selenium-java</artifactId>
      <version>3.4.0</version>
    </dependency>
    <dependency>
      <groupId>com.github.markusbernhardt</groupId>
      <artifactId>robotframework-selenium2library-java</artifactId>
      <version>1.4.0.8</version>
    </dependency>
  </dependencies>
  <build>
    <plugins>
      <plugin>
        <groupId>org.robotframework</groupId>
        <artifactId>robotframework-maven-plugin</artifactId>
        <version>1.4.7</version>
        <executions>
          <execution>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <includes>
            <include>${robot-tag}</include>
          </includes>
        </configuration>
      </plugin>
    </plugins>
  </build>