在执行工具测试期间切换Android设备网络

问题描述 投票:2回答:1

有人在仪器测试过程中碰到运气好吗?我发现了一些不再受支持的过时的解决方案such as this one

我似乎找不到该问题的最新答案。我确信这是许多应用程序的常见测试方案。预先感谢!

android android-espresso android-instrumentation
1个回答
0
投票

好吧,下面是我提出的一种解决方案,用于在仪器化测试期间启用/禁用网络。感谢您对UiAutomator Sandi的引用!

fun clickAirplaneMode(instrumentation: Instrumentation, targetContext: Context) {
    UiDevice.getInstance(instrumentation).run {
        targetContext.packageManager.getLaunchIntentForPackage("com.android.settings")?.let {intent ->
            intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK)
            targetContext.startActivity(intent)
            findObject(UiSelector().textContains("Network")).clickAndWaitForNewWindow()
            findObject(UiSelector().textContains("Airplane")).click()
        }
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.