我正在使用gradle工具api基于接收到Webhook来启动测试。
我看不到将参数传递到工具API的方法。我可以使用以下内容进行测试:
String workingDir = System.getProperty("user.dir");
ProjectConnection connection = GradleConnector.newConnector()
.forProjectDirectory(new File(workingDir))
.connect();
try {
connection.newBuild().forTasks("test").run();
} catch (Exception ex) {
ex.printStackTrace();
} finally {
connection.close();
}
但是我看不到运行诸如“ gradle test --tests = xxx”之类的方法的方法,所以我希望我可以执行gradle任务,这些任务是诸如“ gradle dev_tests”,“ gradle int_tests”之类的测试子集。 / p>
有人知道这是否可行吗?
答案 0 :(得分:1)
按照gradle文档,newBuild()可以方便地用作构建器模式。 您可以在调用run()之前设置几个参数。
//select tasks to run:
build.forTasks( "test");
//include some build arguments:
build.withArguments("--tests=xxx");
...
build.run();
来源: https://docs.gradle.org/current/javadoc/org/gradle/tooling/BuildLauncher.html