内容:
我的一个本地单元测试调用了我正在测试的方法,该方法的逻辑依赖于“BuildConfig.DEBUG”是对还是错。
题:
我注意到,当我使用绿色播放按钮BuildConfig.DEBUG在 Android Studio中运行单元测试时,正如预期的那样为“true”。这可能是因为我将构建变体设置为调试。
但是,当我使用“./gradle test”之类的命令通过终端运行相同的测试时,它设置为false。
这是预期的行为,为什么?
最佳答案
我假设您有两种口味,debug
和release
。
如果运行./gradlew test
,它将运行两个测试任务testDebugUnitTest
和testReleaseUnitTest
。
有简单的测试用例,如下所示。
@Test fun test() {
assertTrue(BuildConfig.DEBUG)
}
它将在
testDebugUnitTest
任务中成功,而在testReleaseUnitTest
任务中失败。test
任务也会失败。因为
test
任务取决于testReleaseUnitTest
。
关于android - 通过Gradle执行本地单元测试时,为什么BuildConfig.DEBUG设置为false?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57579970/