android - 如何在针对特定 Gradle 构建风格时从命令行运行单个单元测试方法

标签 android unit-testing gradle android-gradle-plugin android-testing

我正在尝试从命令行运行一个 Android 测试用例。

我可以在 IDE 中右键单击并运行,但在 CLI 中使用以下命令会失败:

./gradlew test --tests "com.xyz.b.module.TestClass.testToRun"

错误:

> Unknown command-line option '--tests'.

如何运行单个 UNIT TEST 方法?我想强调我想运行一个单元测试,而不是从命令行进行的仪器测试。

更新:我有一个相机应用程序。假设我有一个名为 usCameraDebug 的构建变体。 (这意味着美国相机调试)现在你能告诉我如何运行一个名为 mySingleTest 的测试用例吗?

我试过你提到的这个:./gradlew test --tests "*mySingleTest"

./gradlew app:usCameraDebug test --tests "*mySingleTest"

还有:./gradlew app:usCameraDebugUnitTest --tests "*mySingleTest" 但它 。不起作用。 caan 你告诉我根据我的构建变体准确键入什么。默认情况下,它位于名为“app”的模块中。

这是我要运行的测试:

package  com.xyz.cameras.parts
    @Test
        fun mySingleTest(){
            assertEquals(12,13)
        }

最佳答案

查找测试名称时需要在pattern中指定通配符,并确保使用module + flavor。 --tests不适用于 ./gradlew test./gradlew check

试试这个模式 -> ./gradlew :<module>:<flavor> --tests "*textThatTestNameContains*"

例子 -> ./gradlew :profile:testDebug --tests "*my_profile*"将运行此测试:

@Test
public void my_profile_pageview()

此外,使用 --info 运行标志有助于查看测试本身或 --debug以获得更多输出。例如 ./gradlew --info :profile:testDebug --tests "*my_profile*"

关于android - 如何在针对特定 Gradle 构建风格时从命令行运行单个单元测试方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57057053/

相关文章:

javascript - 现有的单元测试框架可以测试 NodeJs 服务器端和客户端吗?

ios - 如何在 iOS 中为预期的断言/断言失败编写单元测试?

android - 如何使应用程序的矢量可绘制对象覆盖库的矢量可绘制对象?

shell - 运行Shell脚本的Gradle exec任务分散了输入的注意力

android - OnCreate 检测手机状态

android - 如何在更改适配器数据之前暂时停止点击效果?

visual-studio - 类似于 Visual Studio 单元测试中的 NUnit TestCaseSource

java - 如何从 gradle 任务运行 mvn 命令?

android - 在 Google map 代码段中添加回车符

android - 如何在 Android 上更改 com.facebook.widget.LoginButton 的语言