切换上下文
使用给定的Webview name、title或url切换到特定上下文。
此方法通过提供更大的灵活性和精确性来增强默认Appium的context命令,用于在混合移动应用程序中的原生和webview上下文之间切换。
上下文如何工作
有关混合应用和webview的概述,请参考混合应用文档。
下面是switchContext命令如何解决常见挑战的总结:
Android挑战
- Webview通常包含多个页面(类似于浏览器标签)。识别正确的页面需要额外的
元数据,如
title或url,这些在默认的Appium方法中未提供。 - 默认的Appium方法只返回基本的上下文名称(例如
WEBVIEW_{packageName}),而没有关于 webview内容或页面的详细信息。 - 在Android上切换上下文涉及两个步骤,这些都由此方法自动处理:
- 使用
WEBVIEW_{packageName}切换到Webview上下文。 - 使用
switchToWindow方法选择Webview中的适当页面。
- 使用
iOS挑战
- Webview由通用ID(例如
WEBVIEW_{id})标识,这些ID不提供有关内容 或它们对应的应用程序屏幕的信息。 - 确定正确的webview进行交互通常需要反复尝试。
switchContext方法通过检索详细的元数据(例如title、url和可见性)
来简化此过程,确保准确可靠的上下文切换。