Android gradle 只测试一个 flavor

14

我目前已将我的TeamCity实例设置为在所有Android项目上运行connectedCheck。这很好,所有测试都运行正常,一切都很好。但是,connectedCheck会在所有产品口味中运行所有测试。我目前有很多口味,所以对我的项目来说这是浪费的工作,因为在这些口味中我实际上没有任何不同的代码。请问我怎样才能让connectedCheck只针对一个口味运行?


你找到解决方法了吗?我也很想找到某种分离的方法。 - Mendhak
不,我不能再花更多时间调查这个问题了。我的当前设置只运行“connectedCheck”。我刚刚检查了Gradle构建任务。请看下面的答案。 - Kenneth
我在我的问题上得到了答案;虽然不太痛苦,但我使用了@SmallTest@MediumTest的分离。 - Mendhak
5个回答

22

./gradlew connected[Flavor]DebugAndroidTest


如果我有FlavourA、FlavourB和FlavourC,我只想测试FlavourA和B怎么办? - Jono
@jonney,应该是./gradlew connectedFlavorADebugAndroidTest connectedFlavorBDebugAndroidTest。 - ViliusK

12

./gradlew connectedBuildVariantAndroidTest

示例:

./gradlew connectedDevelopmentDebugAndroidTest


这对我有用,但是被采纳的答案不行。感觉很奇怪。 - CorayThan
3
这是正确的答案。通过检查“./gradlew tasks”进行验证。 - vida

4
vida 所说,您可以运行 ./gradlew tasks 以检查运行gradle命令的所有可能性。
我建议使用以下命令: ./gradlew tasks | grep connected。这将筛选出所有可运行的 connectedAndroidTest 变体。

0

如果您想为 Android 测试生成 apk:

./gradlew assemble[flavour]DebugAndroidTest

0

我看到自上次检查以来有一个新任务,名为“connectedAndroidTestProductFalvor_buildvariant”。

我还没有时间检查这个任务,但是描述中写道:“在连接的设备上安装并运行构建ProductFlavor_buildvariant的测试。”

等我测试完后会发布结果。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接