在我们的 Maven 项目中,我们有几个目标:clean
、test
和 install
。
如果我运行mvn clean install
,它会运行test
,这是install
的先决条件。如果我随后再次运行 mvn clean install
而不更改任何代码,它将再次运行 test
。
如何使其足够智能,以避免第二次不必要地运行 test
?
最佳答案
您可以利用两个有用的属性来操作测试用例
# Skip test cases compilation
mvn -Dmaven.test.skip install
# Compile test cases but not execute them
mvn -DskipTests install
但是,如果您希望 Maven 只运行已更改的测试,那么您不能这样做。这是 Gradle 通过 Maven 提供的非常方便的功能之一。
你可以看看这个网站: https://dzone.com/articles/reducing-test-times-only 那家伙创建了一个 poc,尽管它是一种解决方法(maven 不提供),所以我认为您需要 Gradle 为您的案例提供智能的东西。
关于java - 如何避免在运行 "test"时再次运行 "install",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58716072/