switchContext
Mude para um contexto específico usando um determinado name, title ou url de Webview.
Este método aprimora o comando context padrão do Appium, oferecendo mais flexibilidade e precisão
para alternar entre contextos nativos e de webview em aplicativos móveis híbridos.
Como os Contextos Funcionam
Para uma visão geral de Aplicativos Híbridos e webviews, consulte a documentação de Aplicativos Híbridos.
Abaixo está um resumo de como o comando switchContext aborda desafios comuns:
Desafios no Android
- Webviews geralmente contêm várias páginas (semelhantes a abas do navegador). Identificar a página correta requer
metadados adicionais como
titleouurl, que não são fornecidos pelos métodos padrão do Appium. - Os métodos padrão do Appium retornam apenas nomes básicos de contexto (por exemplo,
WEBVIEW_{packageName}) sem detalhes sobre o conteúdo ou páginas dentro do webview. - A troca de contextos no Android envolve duas etapas, que são tratadas automaticamente por este método:
- Mudar para o contexto Webview usando
WEBVIEW_{packageName}. - Selecionar a página apropriada dentro do Webview usando o método
switchToWindow.
- Mudar para o contexto Webview usando
Desafios no iOS
- Webviews são identificados por IDs genéricos (por exemplo,
WEBVIEW_{id}), que não fornecem informações sobre o conteúdo ou a tela do aplicativo à qual eles correspondem. - Determinar o webview correto para interação geralmente requer tentativa e erro.
O método switchContext simplifica este processo recuperando metadados detalhados (por exemplo, title, url e visibilidade)
para garantir uma troca de contexto precisa e confiável.