如何使用espresso或uiautomator模拟应用程序杀人



我们有一个应用程序,它将一些数据存储在singleton类中。因此,只有在应用程序被终止后,数据才会发生变化。因此,我们有一个用例,需要在自动化测试过程中杀死应用程序。如何模拟杀死应用程序并重新打开应用程序

注意,如果在测试运行期间使用adb命令杀死应用程序,则测试将崩溃。

你可以使用

device.apps.kill(your_app_name) 

请检查添加的权限FORCE_STOP_PACKAGES

此外,我们正在使用下一步:

private val uiDevice: UiDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
uiDevice.pressRecentApps()
uiDevice.findObject(your_app_name) and swipeUp or swipeLeft for killing

您可以使用以下方法启动应用程序:

val packageName = getContext().packageName
device.apps.launch("$packageName")

最新更新