微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用 gradlew 从子项目运行一项测试?

如何解决如何使用 gradlew 从子项目运行一项测试?

我在 gradle 中有一个多项目构建。这是一个 android 项目,当我在 android studio 中手动执行时,有问题的测试确实会运行。 项目结构如下:

.../my-app$ ./gradlew -q projects
[...]
Root project 'my-app'
+--- Project ':myapp'
\--- Project ':mymodel'
[...]

我想在 :myapp 中执行单个测试(类)。 由于版本限制,我必须使用项目根目录中的 gradlew

执行单个测试的正确命令似乎是 ./gradlew test --tests my.project.MyTest 但我不知道如何处理子项目。

如果我运行 ./gradlew test --tests my.project.MyTest 我得到

FAILURE: Build Failed with an exception.

* What went wrong:
Problem configuring task :myapp:test from command line.
> UnkNown command-line option '--tests'.

建议运行 gradle help --task :myapp:test 这产生了

> Task :help
Detailed task information for :myapp:test

Path
     :myapp:test

Type
     Task (org.gradle.api.Task)

Description
     Run unit tests for all variants.

Group
     verification

而且根本没有命令行选项,所以我想我可以忽略它。

./gradlew test my.project.MyTest 给予
Task 'my.project.MyTest' not found in root project 'my-app'.
./gradlew :myapp:test my.project.MyTest 也一样。

This answer一个较旧的问题建议拼出对我来说是 ./gradlew :myapp:testReleaseUnitTest --tests my.project.MyTest 并且产生的变体名称

> Task :myapp:testReleaseUnitTest Failed

FAILURE: Build Failed with an exception.

* What went wrong:
Execution Failed for task ':myapp:testReleaseUnitTest'.
> No tests found for given includes: [my.project.MyTest](--tests filter)

./gradlew --version7.1,我刚刚使用 ./gradlew wrapper --gradle-version 7.1gradle wrapper 升级到它。
在这一点上没有想法。我究竟做错了什么?如何在命令行中运行单个测试?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?