取决于调试

时间:2015-09-03 10:13:17

标签: unit-testing groovy gradle-plugin

我正在使用单元测试开发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的真正问题根本不存在。请帮我解决一下这个。看起来测试项目构建目录根本没有创建。看起来它只是在改进,但没有使用任何文件操作。

0 个答案:

没有答案