Set Current Context
Set the context being automated
Example Usage
// Java
Set<String> contextNames = driver.getContextHandles();
driver.context(contextNames.toArray()[1]);
// ...
driver.context("NATIVE_APP");
# Python
webview = driver.contexts[1]
driver.switch_to.context(webview)
# ...
driver.switch_to.context('NATIVE_APP')
// Javascript
// webdriver.io example
let contexts = driver.contexts();
driver.context(contexts[1]);
// ...
driver.context('NATIVE_APP');
[//]: # (DO NOT EDIT THIS FILE! This is an auto-generated file. Editing for this document happens in /commands-yml/commands/context/set-context.yml)
// wd example
let contexts = await driver.contexts();
await driver.context(contexts[1]);
// ...
await driver.context('NATIVE_APP');
# Ruby
# ruby_lib example
webview = available_contexts[1]
set_context(webview)
# ...
set_context('NATIVE_APP')
[//]: # (DO NOT EDIT THIS FILE! This is an auto-generated file. Editing for this document happens in /commands-yml/commands/context/set-context.yml)
# ruby_lib_core example
webview = @driver.available_contexts[1]
@driver.set_context(webview)
# ...
@driver.set_context('NATIVE_APP')
# PHP
$contexts = $driver->contexts();
$driver->context($contexts[1]);
// ...
$driver->context('NATIVE_APP');
// C#
// TODO C# sample
Description
Set the current context to that passed in. If this is moving into a web view context it will involve attempting to connect to that web view:
- iOS - attempt to connect to the application through the remote debugger
- Android - start a Chromedriver process and begin a session to connect to the web view
For information on contexts, see Appium's hybrid automation docs.
Support
Appium Server
Platform | Driver | Platform Versions | Appium Version | Driver Version |
---|---|---|---|---|
iOS | XCUITest | 9.3+ | 1.6.0+ | All |
UIAutomation | 8.0 to 9.3 | All | All | |
Android | Espresso | ?+ | 1.9.0+ | All |
UiAutomator2 | ?+ | 1.6.0+ | All | |
UiAutomator | 4.2+ | All | All | |
Mac | Mac | None | None | None |
Windows | Windows | None | None | None |
Appium Clients
Language | Support | Documentation |
---|---|---|
Java | All | appium.github.io |
Python | All | github.com |
Javascript (WebdriverIO) | All | |
Javascript (WD) | All | github.com |
Ruby | All | www.rubydoc.info |
PHP | All | github.com |
C# | All | github.com |
HTTP API Specifications
Endpoint
POST /wd/hub/session/:session_id/context
URL Parameters
name | description |
---|---|
session_id | ID of the session to route the command to |
JSON Parameters
name | type | description |
---|---|---|
name | String |
The name of the context to which to change |
Response
null