android - 无法在要在 Firebase 测试实验室上运行的 Espresso 脚本中找到检测不同设备相机按钮的解决方案

标签 android testing android-espresso android-camera-intent firebase-test-lab

我必须使用 Espresso 创建脚本以在 Firebase 测试实验室中测试我的应用。我的应用程序使用相机来捕捉图像,我已经打开了默认的相机应用程序。

为了在我的设备上进行测试,我给出了我正在使用的测试设备的包名称。问题是不同的Android设备的相机应用程序包名称不同,我们不知道每个。硬编码包名称也不好。

我已经搜索过了,但找不到找到解决方案的方法。

提前致谢。

最佳答案

我认为在实际的相机应用中没有什么好的方法可以做到这一点,因为相机应用通常因设备型号和 Android 版本而异。

如何在测试中伪造这种依赖性?通过抽象调用相机应用程序的代码,或者通过添加您自己的假相机 Activity ,该 Activity 将被调用并按预期发生的方式向您返回图片。

关于android - 无法在要在 Firebase 测试实验室上运行的 Espresso 脚本中找到检测不同设备相机按钮的解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55240816/

相关文章:

安卓开发工具包。获取 NOTIFICATION_SERVICE 以恢复,而不是启动新实例

android - 在 Android 中下载大文件的最佳方式?

android - (Android Studio) XML 自动完成在包含模块中不起作用

javascript - Angular.js 单元/集成测试 - 触发链接功能

java - 如何将测试覆盖率添加到私有(private)构造函数?

git - 如何处理包含超过 100k 测试文件的 Git 存储库?

testing - Gradle + Robolectric + Espresso : can't run separately

android - 使用 Espresso 测试 Android Activity 时如何使用 MockContentResolver?

android - 无法在 Android Studio 的 Fragment 中解析 finish()

android - 无法使用 dynamicFeatures 运行 Espresso