我正在使用单元测试开发gradle插件 我正在开发依赖于其他插件的其他任务的任务 我正在使用org.gradle.testfixtures.ProjectBuilder来模拟测试项目。
Project project = ProjectBuilder.builder().withProjectDir(FIXTURE_WORKING_DIR).build()
project.apply plugin: 'com.android.application'
project.apply plugin: 'com.tac.kulik.uploadapk'
project.android {
compileSdkVersion 22
buildToolsVersion '22.0.1'
defaultConfig {
versionCode 1
versionName '1.0'
minSdkVersion 22
targetSdkVersion 22
}
buildTypes {
release {
signingConfig signingConfigs.debug
}
alpha{
}
}
}
然后我使用依赖任务
def myTaskName = "myTask${variationName}"
def outputData = variant.outputs.first()
def assembleTask = outputData.assemble
def myTask = project.tasks.create(myTaskName, MyTask)
myTaskTask.dependsOn assembleTask
然后我从测试中调用我的任务
@Test
public void test() {
Project project = TestHelper.evaluatableProject()
project.evaluate()
project.tasks.myTaskFreeRelease.execute()
}
我的任务被调用了。但汇编任务不是(找不到此任务的输出文件)。如何从测试脚本中正确调用任务序列?
更新 它适用于实际项目。调用任务序列,但它不能通过测试工作 测试项目构建dir的真正问题根本不存在。请帮我解决一下这个。看起来测试项目构建目录根本没有创建。看起来它只是在改进,但没有使用任何文件操作。