我想在我的物理设备从物理设备上开始使用espresso编写的仪器测试。
我的想法如下:我的公司有一个应用程序的白标解决方案,所以我们有很多应用程序可以放入Play商店。为了支持我们的支持团队,我编写了一个测试,该测试可以截取应用程序的几个部分,因此他们不必每次都这样做。
问题:他们无法启动屏幕截图制作工具测试'没有安装android sdk,终端打开等。
从我的观点来看,最好的解决方案是实现一个隐藏在应用程序中的秘密按钮,按下它后开始测试。这甚至可能吗?
我从我的计算机终端尝试了以下shell命令并且它有效:
adb shell
am instrument -w -e class com.my.company.ScreenshotTests com.my.company.tests/com.google.android.apps.common.testing.testrunner.GoogleInstrumentationTestRunner
但是当我在设备上运行带有Android终端仿真器应用程序的命令时,它会抛出SecurityException:Permission Denial:startInstrumentation要求以用户-2身份运行但是从用户0调用;这需要android.permission.INTERACT_ACROSS_USERS_FULL。
我必须根设备才能实现某些目标吗?或者它是否可能在没有生根的情况下实现?
如果无法从应用程序启动测试,那么从脚本或其他东西启动它也会很有帮助。基本上,支持团队应该只需单击一个按钮,然后自动截取屏幕截图。有什么想法吗?
答案 0 :(得分:0)
除非满足以下任何条件,否则您将无法从设备本身运行此命令:
如果您想从应用程序本身获取应用程序的屏幕截图,我认为还有其他方法可以通过adb命令完成此操作。您可以通过编程方式浏览应用中的屏幕并截取屏幕截图。