【发布时间】:2015-10-07 01:54:54
【问题描述】:
Webview 在带有运行版本 5.1.1 和 Appium 的 Real Android 设备的混合应用程序中不可用。
在相同的 android/Appium 版本上使用模拟器也可以正常工作。
【问题讨论】:
标签: android selenium-webdriver appium
Webview 在带有运行版本 5.1.1 和 Appium 的 Real Android 设备的混合应用程序中不可用。
在相同的 android/Appium 版本上使用模拟器也可以正常工作。
【问题讨论】:
标签: android selenium-webdriver appium
Webview 应用程序在 Andriod 5 上显示为本机应用程序。如果您想以 webview 格式的代码自动化应用程序,请将自动化功能:automation-name 设置为 Selendroid,并将上下文设置为 webview。
foreach(String context in driver.contexts())
{
if(context.contains("WebView"){
driver.context = context;
}
}
如果您没有 html 内容供屏幕查找选择器,请插入代码
Console.Writeline(driver.pagesource).
这样你也可以得到 html 来选择选择器
【讨论】:
Android 中 webview 的要点
WebView 需要 Android 4.4 或更高版本,即API 级别>=19。
应启用 WebView 调试;开发者必须在 WebView 类中启用 ‘setWebContentsDebuggingEnabled’标志。该标志可以调试加载到应用程序的任何 WebView 中的 Web 内容(HTML / CSS / JavaScript)。
Appium 还在底层使用 Selendroid 来支持 4.4 之前的设备上的 webview。要使用 appium 的此功能,必须在传递给 Appium 服务器的所需功能中将“automationName”指定为“selendroid”。
如果我们正在测试的混合应用程序的构建方式支持最低 Android 版本 4.0.4(API 级别 14)和最高 Android 版本 4.3(API 级别 18),那么我们可以检查 webview 元素并执行我们使用 appium 的 selendroid 模式进行自动化测试。
【讨论】: