我正在使用 Patrol 包在我的 Flutter 应用程序的 Android 版本上运行端到端测试。当我在本地运行这些测试时,应用程序会向用户请求权限(特别是蓝牙和通知),并且我会根据这些权限提示进行 UI 交互。
但是,当我在 Firebase 测试实验室中运行相同的测试时,似乎所有权限都会自动授予,绕过了通常的用户提示流程。
我的目标是:
有没有办法控制或检查 Firebase 测试实验室的权限行为,或以编程方式识别测试是否在此环境中运行?任何指导或解决方法将不胜感激!
我可以使用测试标签解决该问题,但我不想这样做。
Firebase 测试实验室似乎没有设置环境变量,所以我自己设置了
patrol build android --dart-define=IS_FIREBASE_TEST_LAB=true
构建 Android 可交付成果进行测试时。然后,该变量可用于巡逻测试代码和应用程序代码。