gpt4 book ai didi

maven-2 - 从类路径运行 Maven 测试

转载 作者:行者123 更新时间:2023-12-04 22:37:28 26 4
gpt4 key购买 nike

为了清理一堆乱七八糟的东西,我开始将我的测试代码全部放在一个普通的 java 项目中(都在 src/main/java 中),然后将其声明为另一个项目中的 <scope>test</scope> 依赖项,然后期望测试运行。

没有这样的运气。 surefire 只想运行它可以在源代码中看到的测试。

我可以在这里看到一个非常明显的解决方案,涉及 build-helper-plugin 并将测试作为源目录添加到测试编译环境中,但我希望避免它。

如果有人想知道,这一切的原因是使用故障安全插件运行一些集成测试的 POM 配置变得如此复杂,以至于我想将测试类的编译与测试的运行分开。

最佳答案

这现在可以通过 Maven Surefire v2.15 实现。只需将以下类型的配置添加到surefire插件中:

<build>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.15</version>
<configuration>
<dependenciesToScan>
<dependency>com.group.id:my-artifact</dependency>
<dependency>com.group.id:my-other-artifact</dependency>
</dependenciesToScan>
...
</configuration>
...
</plugin>
...
</build>

您还应该在依赖项部分声明实际的依赖项:
<dependencies>
<dependency>
<groupId>com.group.id</groupId>
<artifactId>my-artifact</artifactId>
<type>test-jar</type>
<version>1.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.group.id</groupId>
<artifactId>my-other-artifact</artifactId>
<type>test-jar</type>
<version>1.1</version>
<scope>test</scope>
</dependency>
</dependencies>

关于maven-2 - 从类路径运行 Maven 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3543473/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com