Groovy 测试maven插件,测试项目的project.build.directory属性
我正在测试我的maven插件 布局如下: src \main\java\my.mojo.is.here ..…\it\invoke安装程序写入文件\src\pom.xml 其中,..\it\invoke installer write to file\src\pom.xml是一个测试项目。它是pom.xml调用插件,然后我验证结果 我创建了两个测试项目,并使用maven invoker插件测试插件。 我有一个groovy验证器:Groovy 测试maven插件,测试项目的project.build.directory属性,groovy,maven-plugin,Groovy,Maven Plugin,我正在测试我的maven插件 布局如下: src \main\java\my.mojo.is.here ..…\it\invoke安装程序写入文件\src\pom.xml 其中,..\it\invoke installer write to file\src\pom.xml是一个测试项目。它是pom.xml调用插件,然后我验证结果 我创建了两个测试项目,并使用maven invoker插件测试插件。 我有一个groovy验证器: String successMessage = 'Test pas
String successMessage = 'Test passed'
String outputFilePath = "${project.build.directory}/it/invoke-installer-write-to-file/target/test.output"
File outputFile = new File(outputFilePath)
println "We should get message '$successMessage' from file: $outputFile.absolutePath"
return new File(outputFilePath).exists() && new File(outputFilePath).text.contains(successMessage)
问题是测试项目内部的变量project.build.directory指向插件项目的目标
是否有可能使project.build.directory指向测试项目目标
现在我必须硬编码一个路径来测试项目路径
String outputFilePath = "${project.build.directory}/it/invoke-installer-write-to-file/target/test.output"
我确实找到了这个:
basedir指向测试项目的根。现在我很高兴
String successMessage = 'Test passed'
String outputFilePath = "$basedir/target/test.output"
File outputFile = new File(outputFilePath)
println "We should get message '$successMessage' from file: $outputFile.absolutePath"
return new File(outputFilePath).exists() && new File(outputFilePath).text.contains(successMessage)