【问题标题】:Using Gradle Spoon Plugin to launch tests in specific location使用 Gradle Spoon 插件在特定位置启动测试
【发布时间】:2015-10-22 14:16:28
【问题描述】:

我在查找文档时遇到问题,我该如何解决这种情况。

我能够通过以下方式启动小型/中型/大型测试:

./gradlew spoonSmall
./gradlew spoonMedium
./gradlew spoonLarge

或使用此设置启动特定测试:

spoon {
    (...)

    if (project.hasProperty('spoonClassName')) {
        className = project.spoonClassName

        if (project.hasProperty('spoonMethodName')) {
            methodName = project.spoonMethodName
        }
    }
}

我可以启动特定文件:

./gradlew spoon -PspoonClassName=com.package.tests.MyTest;

我感兴趣的是启动位于以下位置的所有测试的可能性:

./gradlew spoon -PspoonClassName=com.package.tests

包。任何一种方法都很好。 bash 控制台的一些参数,或者可能是创建我自己的注释并通过 ./gradlew spoonMyTests 之类的东西启动的方法。

感谢您的建议/帮助。

【问题讨论】:

    标签: android integration-testing android-espresso spoon


    【解决方案1】:

    来自官方文档:

    有多种方法可以运行特定测试或一组测试。你 可以使用 Spoon --size、--class-name 或 --method-name 选项,或者 您可以使用 --e 选项将参数传递给检测 跑步者,例如

    --e package=com.mypackage.unit_tests

    当直接从命令行(不是从 gradle 任务)执行 Spoon 时,以下命令应该可以工作

    java -jar spoon-runner-1.1.9-jar-with-dependencies.jar \
        --apk ExampleApp-debug.apk \
        --test-apk ExampleApp-debug-androidTest-unaligned.apk \
        --e package=com.package.tests
    

    您需要找到一种方法将这个额外的参数传递给 Spoon gradle 插件。

    更新

    来自Spoon Gradle 插件official doc

    自定义检测参数

    使用spoon扩展上的instrumentationArgs属性来传递自定义 测试参数:

    spoon { instrumentationArgs = ["foo=bar", "name=value"] }

    在您的情况下,这应该如下所示:

    spoon {   
        instrumentationArgs = ["package=com.package.tests"] 
    }
    

    【讨论】:

    • 感谢您的回复。似乎合法,但不知道为什么我会收到错误:从命令行配置任务时出现问题:app:spoon。 > 未知的命令行选项'--e'。
    • @F1sher 是的,因为这是纯 Spoon(不是 gradle 插件)的命令选项。我已经更新了答案
    • 太棒了。非常感谢您的帮助和非常快速的响应/调查我的问题。它有效:) 我可以再问一个问题吗?我可以添加“apk”和“test-apk”作为参数吗?我也需要指定一个。
    • @F1sher 这是您可以在扩展级别设置的内容:github.com/stanfy/spoon-gradle-plugin/blob/master/src/main/… 我认为您必须将其作为 intrumentationArgs 传递(就像包名一样)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-08
    相关资源
    最近更新 更多