谷歌解释了如何控制 Android 模拟器的许多参数,例如电池的当前电量、传感器输入等: https://developer.android.com/studio/run/emulator-console.html

我想创建一个 Espresso 测试,在测试期间更改模拟器的这些参数,这可能吗?我知道有以下方法:

InstrumentationRegistry.getInstrumentation().uiAutomation
    .executeShellCommand("someShellCommand")

可以在测试期间调用此方法,但要更改仿真器的系统参数,我首先必须通过 telnet localhost 5554 登录,然后才能操作仿真器参数,例如: power capacity 30 ,它将电池的功率更改为30%。我如何在 Espresso 测试期间做到这一点?

最佳答案

你可以试试

InstrumentationRegistry.getInstrumentation().getUiAutomation()
    .executeShellCommand("dumpsys battery set level 30");

更改电池电量。其他值或设置可能需要不同的命令。

注意:完成阅读后关闭返回的文件描述符是您的责任。

关于android - 在 Espresso 测试期间发送模拟器控制台命令,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48081847/

10-12 00:32
查看更多