首页 > 解决方案 > WebdriverIO : driver.getContext() 从移动浏览器视图返回本机应用程序

问题描述

我的应用程序是混合应用程序,当我单击链接时,它会打开移动浏览器并启动 url。我需要获取 url 并根据数据对其进行验证。

当我使用 driver.getUrl() 时返回方法未实现

当我使用 driver.getContext() 它返回 Native_App

我怎样才能获得 url 并完成我的测试?

在此处输入图像描述

标签: hybrid-mobile-appwebdriver-ioappium-android

解决方案


您应该首先切换到 WEB_VIEW 上下文:

driver.switch_to.context['WEB_VIEW_chrome]

然后返回应用程序:

driver.switch_to.context['NATIVE_APP]

返回列表中所有可用的上下文:

driver.contexts

返回当前上下文:

driver.context

注意: web_view 始终是列表中的最后一个键,因此您始终可以使用以下命令将上下文更改为 webview(Firefox、Chrome、Safari):

contexts = driver.contexts
driver.switch_to.contexts[-1]

推荐阅读