如何检测Firebase测试实验室中的运行情况

tmt*_*ark 7 android firebase firebase-test-lab

我最近发现了一个问题,我的应用在Firebase中的设置.我们已配置启动前报告,这意味着测试实验室设备正在为我们的分析贡献大量匿名会话.

有没有办法检测设备是否正在运行这些测试?例如,对于测试实验室中的测试,isUserAMonkeyisRunningInTestHarness会返回true吗?如果是这样,这将允许我调整我的分析/等的配置.

Dou*_*son 13

这实际上是在文档中提到的.

您可以检查是否存在名为"firebase.test.lab"的系统属性:

String testLabSetting =
  Settings.System.getString(context.getContentResolver(), "firebase.test.lab");
if ("true".equals(testLabSetting)) {
  // Do something when running in Test Lab
}
Run Code Online (Sandbox Code Playgroud)

  • 这里有一个后续问题。使用此代码似乎已检测到大多数运行自动化测试的设备,但并非全部。Play 预发布报告表明测试是在 Nexus 5/7/9 和 Galaxy 手机上运行的。这些设备已停止出现在我们的日志中 - 但每次构建都会继续出现一个流氓 Nexus 5X。除了这里提到的“firebase.test.lab”属性之外,是否还有其他一些配置变量需要检查? (2认同)