Citrusframework-包括标准的TestNG测试类

时间:2018-12-17 12:31:41

标签: citrus-framework

我有许多柑橘测试,并且一切正常。但是现在我需要包括一个简单的单元测试,因此我添加了一个非常简单的TestNG测试类,并期望该测试与其他Citrus-Tests一起执行。

当我手动执行测试时
mvn clean test -Dtest=AppConfigParserTest
它可以工作,但不包括运行我所有的CitrusTests的全局测试套件。我不知道如何确保它默认执行。

我在src / test / java和其他测试中创建了测试类,就像这样:

public class AppConfigParserTest {

  @Test
  public void testAppConfigParser() throws AppException, IOException {
  ....
  ....
  }
}

也许我错过了文档中的那一部分,希望有人能提供帮助。

谢谢,
克里斯

1 个答案:

答案 0 :(得分:0)

在不知道您的设置的情况下很难弄清为什么测试无法正常工作,但是以下几点可以帮助您弄清楚。

Citrus测试是集成测试,通常使用maven-failsafe-plugin运行,该命名期望使用 MyPerfectTestIT 的命名约定(末尾使用字母 IT )。 由于您正在使用Maven,因此这里有一个示例:

<build>
    <plugins>
        <!-- disable running unit tests -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
                <skipTests>true</skipTests>
            </configuration>
        </plugin>
        <!-- setup running integration tests -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-failsafe-plugin</artifactId>
            <executions>
                <execution>
                    <id>integration-tests</id>
                    <goals>
                        <goal>integration-test</goal>
                        <goal>verify</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

我敢打赌,如果您正确配置了Citrus测试,则单元测试将永远不会与集成测试套件一起运行,因为它们是两种不同类型的测试,并且将由两个不同的maven插件执行。单元测试应该在集成测试之前单独运行。

检查maven-surefire-plugin的配置方式。