android - Firebase 测试实验室中的仪器测试不要求用户权限

标签 android android-permissions android-espresso android-instrumentation firebase-test-lab

当我运行instrumentation tests in Firebase Test Lab时时,不会出现要求用户授予权限的系统对话框,就好像无需用户操作即可批准权限一样。例如,当要求批准屏幕录制时:

  val mediaProjMgr = activity.getSystemService(Context.MEDIA_PROJECTION_SERVICE) as MediaProjectionManager
  startForResult.launch(mediaProjMgr.createScreenCaptureIntent())

当我在本地运行相同的测试时,要求开始录制的弹出窗口确实按预期显示。

这如何与测试实验室配合使用?他们是否以某种方式禁用了对用户权限的需求?其背后的机制是什么?

最佳答案

默认情况下,所有权限均授予 Firebase 测试实验室。要在测试中模拟相同的环境,请使用 GrantPermissionRule在需要权限的测试类中。

关于android - Firebase 测试实验室中的仪器测试不要求用户权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74738197/

相关文章:

android - 如何检测用户何时触摸对话框 fragment 外部?

android - 我需要放慢 espresso 测试用例的运行速度

android - Espresso 在 RecyclerView 中发现可能不在屏幕上的行

android - WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS 不改变状态栏颜色

android - windows 上的 Ant build 文件我到底把 {sdk.dir} 定义放在哪里?

android - 操作不适用于权限被拒绝

java - Android 测试 Espresso 添加 jar 错误

android - Android 中的权限存储在哪里?

android - 找不到浏览器的提供商信息

android - 无法在 root 设备上运行程序 "su"