【发布时间】:2019-09-24 20:39:09
【问题描述】:
我只想在提供特殊标志的情况下运行 selenium 测试,例如
mvn -DrunUiTests=true 测试
我正在使用 Junit5。我已经试过了:
- 一个环境变量。但无论如何,测试都会被实例化。
- 自制注释
@Target({ ElementType.TYPE, ElementType.METHOD })
@Retention(RetentionPolicy.RUNTIME)
@ExtendWith(DisableUITests.class)
public @interface UITest { }
如果设置了环境变量,DisableUITests 返回 ConditionEvaluationResult.enabled。但是在控制台上运行的 maven 会忽略该注释。
此外,它还尝试了 surefire 插件:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M3</version>
<configuration>
<excludes>
<exclude>**/*UiTest.java</exclude>
</excludes>
</configuration>
</plugin>
但是我无法自己开始测试:-)
【问题讨论】:
-
您是否考虑过在
integration-test阶段运行这些测试?这将在package之后的后续构建阶段使用Maven Failsafe Plugin。