gpt4 book ai didi

android - 如何检测 android 应用程序是否正在使用 Espresso 运行 UI 测试

转载 作者:IT王子 更新时间:2023-10-28 23:33:19 26 4
gpt4 key购买 nike

我正在为 Android 编写一些 Espresso 测试。我正在运行以下问题:

为了让某个测试用例正常运行,我需要禁用应用程序中的一些功能。因此,在我的应用程序中,我需要检测我是否正在运行 Espresso 测试,以便我可以禁用它。但是,我不想使用 BuildConfig.DEBUG ,因为我不希望在调试版本中禁用这些功能。另外,我想避免创建新的 buildConfig 以避免创建太多的构建变体(我们已经定义了很多风格)。

我正在寻找一种方法来定义 buildConfigField 以进行测试,但我在 Google 上找不到任何引用。

最佳答案

结合 Commonsware 评论 + Comtaler 的解决方案,这是一种使用 Espresso 框架为任何测试类执行此操作的方法。

private static AtomicBoolean isRunningTest;

public static synchronized boolean isRunningTest () {
if (null == isRunningTest) {
boolean istest;

try {
Class.forName ("android.support.test.espresso.Espresso");
istest = true;
} catch (ClassNotFoundException e) {
istest = false;
}

isRunningTest = new AtomicBoolean (istest);
}

return isRunningTest.get();
}

关于android - 如何检测 android 应用程序是否正在使用 Espresso 运行 UI 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28550370/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com