Set Current Context
Set the context being automated
//: # (DO NOT EDIT THIS FILE! This is an auto-generated file. Editing for this document happens in /commands-yml/commands/context/set-context.yml)
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.getContexts();
driver.switchContext(contexts[1]);
// ...
driver.switchContext('NATIVE_APP');
// 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')
# 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#
// Switch to specific webview
List<string> AllContexts = new List<string>();
foreach (var context in (driver.Contexts))
{
AllContexts.Add(context);
}
driver.Context = (AllContexts[1]);
// Switch to NATIVE_APP
driver.Context = ("NATIVE_APP");
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.3+ | All | All | |
| Mac | Mac | None | None | None |
| Windows | Windows | None | None | None |
Appium Clients
| Language | Support | Documentation |
|---|---|---|
| Java | All | appium.github.io |
| Python | All | appium.github.io |
| 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 /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
See Also
官方链接为:Set Context - Appium