Android Studio中「Record espresso test」选项灰化的可能原因
当前选中的不是Android应用模块:Espresso录制功能仅支持
com.android.application类型的模块,要是你现在选的是Android库模块、纯Java/Kotlin库模块这类非应用模块,按钮肯定是灰的。去Project视图里确认下选中的是不是主应用模块。缺少合法的Instrumented测试类/目录:录制功能得基于
androidTest目录下的测试类启动。如果你的项目还没建androidTest目录,或者目录里没有继承AndroidJUnit4的测试类,就没法用录制功能。先在src/androidTest/java/[你的包名]下建个空测试类试试:import androidx.test.ext.junit.runners.AndroidJUnit4; import org.junit.runner.RunWith; @RunWith(AndroidJUnit4.class) public class MainActivityTest { }模拟器API等级过低:Espresso录制要求设备API等级至少24,要是你用的模拟器是API 23及以下的版本,按钮会直接灰化。换个API 24以上的模拟器再试。
Android Studio与Espresso版本不兼容:旧版Android Studio可能适配不了新版Espresso依赖,反过来也一样。把Android Studio更到稳定版,同时确保Gradle插件版本和Espresso版本匹配(比如Gradle插件7.x对应Espresso 3.4+)。
运行配置不是Instrumented Tests类型:工具栏的运行配置下拉框里,要是选的不是Android Instrumented Test配置,录制按钮也会灰。手动创建一个指向
androidTest目录下测试类的运行配置就行。项目同步/构建未完成:刚加完Espresso依赖后,得等Gradle同步、项目构建完成,录制功能才会激活。等Sync提示跑完,或者手动点
Build > Make Project再试。模拟器调试状态异常:就算模拟器在运行,偶尔也会出现调试模式失效的情况。重启下模拟器,或者进模拟器设置的「开发者选项」确认「USB调试」是开启状态。
内容的提问来源于stack exchange,提问作者HPage

