docs(appium): Update documentation translations (#21617)

Co-authored-by: mykola-mokhnach <7767781+mykola-mokhnach@users.noreply.github.com>
This commit is contained in:
github-actions[bot]
2025-09-29 21:42:42 -07:00
committed by GitHub
parent 1c7e36c297
commit 938b1088b2
16 changed files with 291 additions and 310 deletions

View File

@@ -36,7 +36,7 @@ Don't miss this chance to contribute to the Appium community and showcase your e
## How to Submit Your Proposal
Visit our website at [https://appiumconf.com/](https://appiumconf.com/) and Submit a Proposal. We're excited to see your innovative ideas and experiences with Appium!
Visit our website at [https://appiumconf.com/](https://appiumconf.com/) and [Submit a Proposal](https://confengine.com/conferences/appium-conf-2024/proposals?utm_medium=referal&utm_source=appium.io&utm_campaign=launch). We're excited to see your innovative ideas and experiences with Appium!
## Stay Tuned

View File

@@ -2,148 +2,120 @@
hide:
- navigation
title: Contributing to Appium
title: ""
---
The Appium project would not exist without the many contributions of code, documentation,
maintenance, and support from companies and volunteers. As such, we welcome contributions!
As such, we welcome contributions!
There are a lot of different ways to help the project - see below for everything you can do and the
processes to follow for each contribution method. Note that no matter how you contribute, your
participation is governed by our [Code of Conduct](https://github.com/appium/appium/blob/master/CONDUCT.md).
processes to follow for each contribution method. 加入讨论论坛
## Join the Discussion Forum
## 你无需了解 Appium 的内部实现就能做出贡献!如果你有使用 Appium 的经验并愿意分享,请考虑在 Appium 论坛discuss.appium.io帮助其他用户。去看看是否有你能回答的问题。
You don't need to know the internals of Appium to be able to contribute! If you have experience with
using Appium and feel like sharing your knowledge with others, consider helping out users on the
Appium forums at [discuss.appium.io](https://discuss.appium.io/). Hop on over and see if there are
any questions that you can answer.
报告错误或功能请求 如果你遇到错误,或有希望 Appium 支持的新功能,请在我们的 GitHub issue 跟踪器中告知我们。创建 issue 时请使用合适的问题表单模板。
## Report Bugs or Feature Requests
## 除了创建 issue 之外,你还可以帮助我们调查已报告的问题。你只需对 Appium 有足够的熟悉度以便尝试复现 bug。
If you've encountered a bug, or have a cool feature in mind that you think Appium should support,
make sure to let us know at our [GitHub issue tracker](https://github.com/appium/appium/issues).
Please use the appropriate issue form template when creating your issue.
你无需了解 Appium 的内部实现也可以参与贡献!如果你有使用 Appium 的经验并愿意分享,请考虑在 Appium 论坛discuss.appium.io帮助其他用户。去看看是否有你可以回答的问题。
## Triage Issues
## 报告缺陷或功能需求
In addition to creating issues, you can also help us investigate already reported issues. All you
need is enough familiarity with Appium to try and reproduce bugs.
如果你遇到错误,或有希望 Appium 支持的新功能想法,请在我们的 GitHub 问题跟踪器中告诉我们。创建问题时请使用相应的问题表单模版。 问题分级Triage Issues
You can get started by checking our [GitHub issue tracker](https://github.com/appium/appium/issues)
for issues with labels such as `Needs Triage` or `Needs Info`, and leaving relevant comments:
除了创建问题,你也可以帮助我们调查已报告的问题。你只需对 Appium 有足够的熟悉度以尝试重现这些问题。
- If the issue is a duplicate, drop a link to the original issue
- If the user has not provided enough information (such as Appium logs), ask them for more details
- If you can reproduce the problem on your own environment, provide all the information that you think
would help us track down the cause of the issue
- 需要分类Needs Triage
- 需要信息Needs Info
For further information on triaging Appium issues (for any Appium project repository), please contact
any member of the [Technical Committee](https://github.com/appium/appium/blob/master/GOVERNANCE.md#the-technical-committee).
如果该问题是重复的,请附上原始问题的链接
## Contribute Code
## 如果用户未提供足够的信息(例如 Appium 日志),请向他们索取更多细节
We are always open to pull requests for improving the Appium code or documentation!
如果你能在自己的环境中重现该问题,请提供所有你认为有助于我们查找原因的信息
!!! info
Developer information may not be kept up to date as frequently as user-facing information, or
it may be most relevant in its current form on the online repository, not in this published
version. Make sure to check the repo or discuss with maintainers. We would be glad to help
new contributors get started!
关于为 Appium任何 Appium 项目仓库)进行问题分类的更多信息,请联系任意一位技术委员会成员。
Start by cloning the repository (we recommend [forking](https://github.com/appium/appium/fork)
it first):
贡献代码
```sh
我们欢迎通过拉取请求pull requests来改进 Appium 的代码或文档!
```
!!! info
开发者信息可能不会像面向用户的信息那样频繁更新,或在当前发布版本中并非始终适用。请务必查看在线仓库或与维护者讨论。我们很乐意帮助新贡献者入门!
首先克隆仓库(推荐先 fork
```sh
git clone https://github.com/appium/appium.git
cd appium
```
!!! info
如果你是 VS Code 用户,可以使用 [Runme](https://runme.dev/api/runme?repository=https%3A%2F%2Fgithub.com%2Fappium%2Fappium.git&fileToOpen=packages%2Fappium%2Fdocs%2Fen%2Fcontributing%2Findex.md) 轻松检出该项目。
If you are VS Code user, you can easily check out the project using [Runme](https://runme.dev/api/runme?repository=https%3A%2F%2Fgithub.com%2Fappium%2Fappium.git&fileToOpen=packages%2Fappium%2Fdocs%2Fen%2Fcontributing%2Findex.md).
Install dependencies:
安装依赖:
```sh
npm install
```
From here on there are several things you can do.
Build the project:
接下来你可以做几件事情。
```sh
构建项目:
```
npm run build
```
Build the project and watch for changes:
```sh
构建项目并监听更改:
```
npm run dev
```
Start the locally built Appium server:
```sh
```
npm start
```
Run various tests:
```sh
npm run lint
npm run test:unit
npm run test:types
npm run test:smoke
npm run test:e2e
npm run test:quick # unit and types
npm run test:slow # everything
运行各种测试:
```
You can also run tests for specific workspaces, e.g.:
### npm run lint&#xA;npm run test:unit&#xA;npm run test:types&#xA;npm run test:smoke&#xA;npm run test:e2e&#xA;npm run test:quick # unit 和 types&#xA;npm run test:slow # 全部测试
```sh
你也可以为特定工作区运行测试,例如:
export APPIUM_WORKSPACE=@appium/base-driver
npm run test:unit -w $APPIUM_WORKSPACE
npm run test:unit -w $APPIUM_WORKSPACE 文档
本项目的文档位于项目仓库中,采用 Markdown 文件形式,由 @appium/docutils 模块的文档系统构建。该模块基于 MkDocs因此需要在系统上安装 Python。
```sh
@appium/docutils
```
### Documentation
The documentation for this project is [available in the project repository itself](https://github.com/appium/appium/tree/master/packages/appium/docs).
It is contained in Markdown files, which are built by our documentation system in the
`@appium/docutils` module. This module is based on [MkDocs](https://www.mkdocs.org/) and therefore
requires [Python](https://www.python.org/) to be installed on your system.
Install Python dependencies:
安装 Python 依赖:
```sh
npm run install-docs-deps
```
After making your changes, you can run the documentation server in dev mode:
在完成修改后,你可以以开发模式运行文档服务器:
```sh
npm run dev:docs
```
## npm run dev:docs
You can then view the documentation at `http://127.0.0.1:8000/docs/en`.
然后可以在 http://127.0.0.1:8000/docs/en 查看文档。 http://127.0.0.1:8000/docs/en
## Translating Appium Documentation
### 如果你希望参与将 Appium 文档翻译成你的语言,请加入 Appium Documentation Crowdin 项目的翻译者组并开始翻译。如果你发现可用的 Crowdin 语言列表中缺少你的语言,请创建 issue 告知我们。
The process of Appium documents localization into languages other than English is automated and is done via
the [Crowdin Translations Management System](https://crowdin.com). Do not edit any translated documents
directly in the GitHub Appium repository as they are going to be replaced with ones exported from Crowdin
during an upcoming sync.
### Where To Start
If you would like to contribute to the translation of Appium documents into your language then simply join
the translators group for the [Appium Documentation](https://crowdin.com/project/appium-documentation)
Crowdin project, and start translating documents there. If you see that your language is missing from
the list of available Crowdin languages then simply let us know by creating an
[issue](https://github.com/appium/appium/issues).
Appium 文档翻译(非英语语言)的流程是自动化的,由 Crowdin 翻译管理系统完成。不要直接在 GitHub 上编辑任何已翻译的文档,因为它们将在即将的同步中被 Crowdin 导出的版本覆盖。 从何开始
### Source Language Updates

View File

@@ -50,7 +50,7 @@ npx appium-docs init
This will:
1. Create a `tsconfig.json` if one does not already exist. This is necessary even if your extension
is not written in TypeScript.
is not written in TypeScript.
2. Create a `mkdocs.yml` with the necessary configuration for MkDocs.
### Documenting Your Extension

View File

@@ -21,13 +21,13 @@ The interface defines the following methods and properties:
- `diagnose(): Promise<DoctorCheckResult>`: Contains the code to diagnose a possible issue
- `fix(): Promise<string|null>`: Either fixes the actual problem if `hasAutofix()` returns true or
returns a string description for possible manual fixes. If this method throws an exception named
`FixSkippedError` and `hasAutofix()` returns true then the result of the method invocation
is going to be ignored.
returns a string description for possible manual fixes. If this method throws an exception named
`FixSkippedError` and `hasAutofix()` returns true then the result of the method invocation
is going to be ignored.
- `hasAutofix(): boolean`: Whether calling `fix()` would resolve the found issue
- `isOptional(): boolean`: Whether the found issue can be ignored and is not a showstopper
- `log: AppiumLogger`: May be used for logging. This property may be assigned
by the instance itself or by the Appium server if it is left unassigned.
by the instance itself or by the Appium server if it is left unassigned.
The `DoctorCheckResult` object returned by the `diagnose()` method must contain the following properties:

View File

@@ -579,7 +579,7 @@ three ways:
1. Extending the classic WebDriver protocol and creating client-side plugins to access the extensions via the classic HTTP interface
2. Extending the WebDriver BiDi protocol with new modules and methods, accessed from a client via the BiDi interface
3. Overloading the Execute Script command by defining Execute
Methods
Methods
If you want to follow the first path, you can direct Appium to recognize new methods and add them
to its set of allowed HTTP routes and command names. You do this by assigning the `newMethodMap`
@@ -685,17 +685,17 @@ async execute(script, args) {
A couple notes about this system:
1. The arguments array sent via the call to Execute Script must contain only zero or one element(s). The
first item in the list is considered to be the parameters object for your method. These parameters
will be parsed, validated, and then applied to your overload method in the order specified in
`executeMethodMap` (the order specified in the `required` parameters list, followed by the
`optional` parameters list). I.e., this framework assumes only a single actual argument sent in via
Execute Script (and this argument should be an object with keys/values representing the
parameters your execute method expects).
first item in the list is considered to be the parameters object for your method. These parameters
will be parsed, validated, and then applied to your overload method in the order specified in
`executeMethodMap` (the order specified in the `required` parameters list, followed by the
`optional` parameters list). I.e., this framework assumes only a single actual argument sent in via
Execute Script (and this argument should be an object with keys/values representing the
parameters your execute method expects).
2. Appium does not automatically implement `execute` (the Execute Script handler) for you. You may
wish, for example, to only call the `executeMethod` helper function when you're not in proxy
mode!
wish, for example, to only call the `executeMethod` helper function when you're not in proxy
mode!
3. The `executeMethod` helper will reject with an error if a script name doesn't match one of the
script names defined as a command in `executeMethodMap`, or if there are missing parameters.
script names defined as a command in `executeMethodMap`, or if there are missing parameters.
One of the nice things about the Execute Method strategy is that methods implemented in this way
will be available via the classic or BiDi interfaces (since they will result in the same Appium
@@ -770,7 +770,7 @@ that multiple simultaneous sessions don't use the same resources:
1. Have your users specify resource IDs via capabilities (`appium:driverPort` etc)
2. Just always use free resources (find a new random port for each session)
3. Have each driver express what resources it is using, then examine currently-used resources from
other drivers when a new session begins.
other drivers when a new session begins.
To support this third strategy, you can implement `get driverData` in your driver to return what
sorts of resources your driver is currently using, for example:

View File

@@ -236,13 +236,13 @@ upstream server. In this case, we might run into a problem, because the plugin n
handle that command! The way Appium handles this is as follows:
1. When a command comes in, before deciding whether to proxy the command, the main protocol handler
checks to see whether a plugin would handle the command.
checks to see whether a plugin would handle the command.
2. If a plugin would _not_ handle the command--all proceeds as normal, and the request is either
proxied or not, based on the driver's proxy mode.
proxied or not, based on the driver's proxy mode.
3. If a plugin _would_ handle the command, then the proxy behavior is skipped for the time being,
and wrapped up as the `next` function sent to the plugin. So if you have a command handler in
your plugin, and you want to be sure that the default driver proxying _does_ take place, then
simply `await next()` instead of (or in addition to) whatever your plugin handler is doing.
and wrapped up as the `next` function sent to the plugin. So if you have a command handler in
your plugin, and you want to be sure that the default driver proxying _does_ take place, then
simply `await next()` instead of (or in addition to) whatever your plugin handler is doing.
### Throw WebDriver-specific errors
@@ -331,7 +331,7 @@ drivers, you can create new commands in one of two ways, just as is possible for
1. Extending the WebDriver protocol and creating client-side plugins to access the extensions
2. Extending the WebDriver BiDi protocol with new modules and methods, accessed from a client via the BiDi interface
3. Overloading the Execute Script command by defining Execute
Methods
Methods
#### Extending the HTTP Protocol
@@ -458,10 +458,10 @@ inside the plugin class:
1. The `executeMethodMap`, defined in just the same way as for drivers
2. The implementation of the command method as defined in `executeMethodMap` (in this case,
`plugMeIn`)
`plugMeIn`)
3. The overriding/handling of the `execute` command. Just like any plugin command handlers, the
first two arguments are `next` and `driver`, followed by the script name and args. `BasePlugin`
implements a helper method which we can simply call with all of these arguments.
first two arguments are `next` and `driver`, followed by the script name and args. `BasePlugin`
implements a helper method which we can simply call with all of these arguments.
Overriding Execute Methods from drivers works as you'd expect: if your plugin defines an Execute
Method with the same name as that of a driver, your command (in this case `plugMeIn`) will be

View File

@@ -1,6 +1,7 @@
---
hide:
- toc
title: Masking Sensitive Log Data
---

View File

@@ -1,6 +1,7 @@
---
hide:
- toc
title: Managing Contexts
---

View File

@@ -1,6 +1,7 @@
---
hide:
- toc
title: Execute Methods
---
@@ -9,10 +10,10 @@ defined by the W3C WebDriver spec, Appium needs a way for these "extended" comma
by client libraries. There are two main strategies for this:
1. Appium drivers define new W3C-compatible API routes, and Appium clients are updated to include
support for those new routes.
support for those new routes.
2. Appium drivers define so-called "Execute Methods" which provide new functionality by
overloading the existing `Execute Script` command which is already available in any WebDriver-
based client library (including all Selenium and Appium clients).
overloading the existing `Execute Script` command which is already available in any WebDriver-
based client library (including all Selenium and Appium clients).
There are pros and cons for each strategy, but it is ultimately up to the extension author to
decide how they wish implement new commands.
@@ -133,9 +134,9 @@ Javascript execution:
1. The script string is just a command name; it will be provided by the driver documentation
2. The standard way to provide parameters is as a _single_ object with keys representing parameter
names and values representing parameter values. So in this case, we had to specify both the
parameter name (`bundleId`) as the key of the parameters object, and the parameter value
(`com.my.app`) as the value for that key. A driver can define parameters as _required_ or _optional_.
names and values representing parameter values. So in this case, we had to specify both the
parameter name (`bundleId`) as the key of the parameters object, and the parameter value
(`com.my.app`) as the value for that key. A driver can define parameters as _required_ or _optional_.
Of course, always refer to the documentation for the particular Execute Method in case the author
has made any alterations to the standard access method.

View File

@@ -151,285 +151,285 @@ Icons are used to indicate endpoint support in either certain drivers, or in the
</div>
- `GET /sessions`
- :octicons-arrow-right-24: `GET /appium/sessions` :simple-appium:
- :octicons-arrow-right-24: `GET /appium/sessions` :simple-appium:
- `POST /session/:sessionId/accept_alert`
- :octicons-arrow-right-24: `POST /session/:sessionId/alert/accept` :simple-appium:
- :octicons-arrow-right-24: `mobile: alert` [execute method](./execute-methods.md) :material-apple:
- :octicons-arrow-right-24: `mobile: acceptAlert` execute method :material-android:
- :octicons-arrow-right-24: `POST /session/:sessionId/alert/accept` :simple-appium:
- :octicons-arrow-right-24: `mobile: alert` [execute method](./execute-methods.md) :material-apple:
- :octicons-arrow-right-24: `mobile: acceptAlert` execute method :material-android:
- `GET /session/:sessionId/alert_text`
- :octicons-arrow-right-24: `GET /session/:sessionId/alert/text` :simple-appium:
- :octicons-arrow-right-24: `GET /session/:sessionId/alert/text` :simple-appium:
- `POST /session/:sessionId/alert_text`
- :octicons-arrow-right-24: `POST /session/:sessionId/alert/text` :simple-appium:
- :octicons-arrow-right-24: `POST /session/:sessionId/alert/text` :simple-appium:
- `POST /session/:sessionId/appium/app/background`
- :octicons-arrow-right-24: `mobile: backgroundApp` execute method :material-apple: :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: backgroundApp` execute method :material-apple: :material-android: :material-coffee:
- `POST /session/:sessionId/appium/app/close`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `mobile: terminateApp` execute method :material-apple: :material-android: :material-coffee:
- :octicons-arrow-right-24: `macos: terminateApp` execute method :material-apple-finder:
- :octicons-arrow-right-24: `windows: closeApp` execute method :material-microsoft-windows:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `mobile: terminateApp` execute method :material-apple: :material-android: :material-coffee:
- :octicons-arrow-right-24: `macos: terminateApp` execute method :material-apple-finder:
- :octicons-arrow-right-24: `windows: closeApp` execute method :material-microsoft-windows:
- `POST /session/:sessionId/appium/app/end_test_coverage`
- :octicons-arrow-right-24: `mobile: shell` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: shell` execute method :material-android: :material-coffee:
- `POST /session/:sessionId/appium/app/launch`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `mobile: launchApp` execute method :material-apple:
- :octicons-arrow-right-24: `mobile: activateApp` or `mobile: startActivity` execute methods :material-android: :material-coffee:
- :octicons-arrow-right-24: `macos: launchApp` or `macos: activateApp` execute methods :material-apple-finder:
- :octicons-arrow-right-24: `windows: launchApp` execute method :material-microsoft-windows:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `mobile: launchApp` execute method :material-apple:
- :octicons-arrow-right-24: `mobile: activateApp` or `mobile: startActivity` execute methods :material-android: :material-coffee:
- :octicons-arrow-right-24: `macos: launchApp` or `macos: activateApp` execute methods :material-apple-finder:
- :octicons-arrow-right-24: `windows: launchApp` execute method :material-microsoft-windows:
- `POST /session/:sessionId/appium/app/reset`
- :octicons-arrow-right-24: `mobile: clearApp` execute method :material-apple: [^sim] :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: clearApp` execute method :material-apple: [^sim] :material-android: :material-coffee:
- `POST /session/:sessionId/appium/app/strings`
- :octicons-arrow-right-24: `mobile: getAppStrings` execute method :material-apple: :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: getAppStrings` execute method :material-apple: :material-android: :material-coffee:
- `GET /session/:sessionId/appium/device/app_state`
- :octicons-arrow-right-24: `POST /session/:sessionId/appium/device/app_state` :simple-appium:
- :octicons-arrow-right-24: `mobile: queryAppState` execute method :material-apple: :material-android: :material-coffee:
- :octicons-arrow-right-24: `macos: queryAppState` execute method :material-apple-finder:
- :octicons-arrow-right-24: `POST /session/:sessionId/appium/device/app_state` :simple-appium:
- :octicons-arrow-right-24: `mobile: queryAppState` execute method :material-apple: :material-android: :material-coffee:
- :octicons-arrow-right-24: `macos: queryAppState` execute method :material-apple-finder:
- `GET /session/:sessionId/appium/device/current_activity`
- :octicons-arrow-right-24: `mobile: getCurrentActivity` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: getCurrentActivity` execute method :material-android: :material-coffee:
- `GET /session/:sessionId/appium/device/current_package`
- :octicons-arrow-right-24: `mobile: getCurrentPackage` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: getCurrentPackage` execute method :material-android: :material-coffee:
- `GET /session/:sessionId/appium/device/display_density`
- :octicons-arrow-right-24: `mobile: getDisplayDensity` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: getDisplayDensity` execute method :material-android: :material-coffee:
- `POST /session/:sessionId/appium/device/finger_print`
- :octicons-arrow-right-24: `mobile: fingerPrint` execute method :material-android: [^sim] :material-coffee: [^sim]
- :octicons-arrow-right-24: `mobile: fingerPrint` execute method :material-android: [^sim] :material-coffee: [^sim]
- `POST /session/:sessionId/appium/device/get_clipboard`
- :octicons-check-24: Moved to drivers: :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: getClipboard` execute method :material-apple: :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: getPasteboard` execute method :material-apple: [^sim]
- :octicons-arrow-right-24: `windows: getClipboard` execute method :material-microsoft-windows:
- :octicons-check-24: Moved to drivers: :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: getClipboard` execute method :material-apple: :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: getPasteboard` execute method :material-apple: [^sim]
- :octicons-arrow-right-24: `windows: getClipboard` execute method :material-microsoft-windows:
- `POST /session/:sessionId/appium/device/gsm_call`
- :octicons-arrow-right-24: `mobile: gsmCall` execute method :material-android: [^sim] :material-coffee: [^sim]
- :octicons-arrow-right-24: `mobile: gsmCall` execute method :material-android: [^sim] :material-coffee: [^sim]
- `POST /session/:sessionId/appium/device/gsm_signal`
- :octicons-arrow-right-24: `mobile: gsmSignal` execute method :material-android: [^sim] :material-coffee: [^sim]
- :octicons-arrow-right-24: `mobile: gsmSignal` execute method :material-android: [^sim] :material-coffee: [^sim]
- `POST /session/:sessionId/appium/device/gsm_voice`
- :octicons-arrow-right-24: `mobile: gsmVoice` execute method :material-android: [^sim] :material-coffee: [^sim]
- :octicons-arrow-right-24: `mobile: gsmVoice` execute method :material-android: [^sim] :material-coffee: [^sim]
- `POST /session/:sessionId/appium/device/is_locked`
- :octicons-arrow-right-24: `mobile: isLocked` execute method :material-apple: :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: isLocked` execute method :material-apple: :material-android: :material-coffee:
- `POST /session/:sessionId/appium/device/keyevent`
- :octicons-arrow-right-24: `mobile: keys` execute method :material-apple: (iPadOS only)
- :octicons-arrow-right-24: `mobile: pressKey` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `macos: keys` execute method :material-apple-finder:
- :octicons-arrow-right-24: `windows: keys` execute method :material-microsoft-windows:
- :octicons-arrow-right-24: `mobile: keys` execute method :material-apple: (iPadOS only)
- :octicons-arrow-right-24: `mobile: pressKey` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `macos: keys` execute method :material-apple-finder:
- :octicons-arrow-right-24: `windows: keys` execute method :material-microsoft-windows:
- `POST /session/:sessionId/appium/device/lock`
- :octicons-arrow-right-24: `mobile: lock` execute method :material-apple: :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: lock` execute method :material-apple: :material-android: :material-coffee:
- `POST /session/:sessionId/appium/device/long_press_keycode`
- :octicons-arrow-right-24: `mobile: pressKey` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: pressKey` execute method :material-android: :material-coffee:
- `POST /session/:sessionId/appium/device/network_speed`
- :octicons-arrow-right-24: `mobile: networkSpeed` execute method :material-android: [^sim] :material-coffee: [^sim]
- :octicons-arrow-right-24: `mobile: networkSpeed` execute method :material-android: [^sim] :material-coffee: [^sim]
- `POST /session/:sessionId/appium/device/open_notifications`
- :octicons-arrow-right-24: `mobile: statusBar` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: openNotifications` execute method :material-android:
- :octicons-arrow-right-24: `mobile: statusBar` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: openNotifications` execute method :material-android:
- `POST /session/:sessionId/appium/device/power_ac`
- :octicons-arrow-right-24: `mobile: powerAC` execute method :material-android: [^sim] :material-coffee: [^sim]
- :octicons-arrow-right-24: `mobile: powerAC` execute method :material-android: [^sim] :material-coffee: [^sim]
- `POST /session/:sessionId/appium/device/power_capacity`
- :octicons-arrow-right-24: `mobile: powerCapacity` execute method :material-android: [^sim] :material-coffee: [^sim]
- :octicons-arrow-right-24: `mobile: powerCapacity` execute method :material-android: [^sim] :material-coffee: [^sim]
- `POST /session/:sessionId/appium/device/press_keycode`
- :octicons-arrow-right-24: `mobile: keys` execute method :material-apple: (iPadOS only)
- :octicons-arrow-right-24: `mobile: pressKey` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `macos: keys` execute method :material-apple-finder:
- :octicons-arrow-right-24: `windows: keys` execute method :material-microsoft-windows:
- :octicons-arrow-right-24: `mobile: keys` execute method :material-apple: (iPadOS only)
- :octicons-arrow-right-24: `mobile: pressKey` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `macos: keys` execute method :material-apple-finder:
- :octicons-arrow-right-24: `windows: keys` execute method :material-microsoft-windows:
- `POST /session/:sessionId/appium/device/send_sms`
- :octicons-arrow-right-24: `mobile: sendSms` execute method :material-android: [^sim] :material-coffee: [^sim]
- :octicons-arrow-right-24: `mobile: sendSms` execute method :material-android: [^sim] :material-coffee: [^sim]
- `POST /session/:sessionId/appium/device/set_clipboard`
- :octicons-arrow-right-24: `mobile: setClipboard` execute method :material-apple: :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: setPasteboard` execute method :material-apple: [^sim]
- :octicons-arrow-right-24: `windows: setClipboard` execute method :material-microsoft-windows:
- :octicons-arrow-right-24: `mobile: setClipboard` execute method :material-apple: :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: setPasteboard` execute method :material-apple: [^sim]
- :octicons-arrow-right-24: `windows: setClipboard` execute method :material-microsoft-windows:
- `POST /session/:sessionId/appium/device/shake`
- :octicons-arrow-right-24: `mobile: shake` execute method :material-apple: [^sim]
- :octicons-arrow-right-24: `mobile: shake` execute method :material-apple: [^sim]
- `POST /session/:sessionId/appium/device/start_activity`
- :octicons-arrow-right-24: `mobile: startActivity` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: startActivity` execute method :material-android: :material-coffee:
- `GET /session/:sessionId/appium/device/system_bars`
- :octicons-arrow-right-24: `mobile: deviceScreenInfo` execute method :material-apple:
- :octicons-arrow-right-24: `mobile: getSystemBars` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: deviceScreenInfo` execute method :material-apple:
- :octicons-arrow-right-24: `mobile: getSystemBars` execute method :material-android: :material-coffee:
- `POST /session/:sessionId/appium/device/toggle_airplane_mode`
- :octicons-arrow-right-24: `mobile: setConnectivity` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: setConnectivity` execute method :material-android: :material-coffee:
- `POST /session/:sessionId/appium/device/toggle_data`
- :octicons-arrow-right-24: `mobile: setConnectivity` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: setConnectivity` execute method :material-android: :material-coffee:
- `POST /session/:sessionId/appium/device/toggle_location_services`
- :octicons-arrow-right-24: `mobile: toggleGps` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: toggleGps` execute method :material-android: :material-coffee:
- `POST /session/:sessionId/appium/device/toggle_wifi`
- :octicons-arrow-right-24: `mobile: setConnectivity` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: setConnectivity` execute method :material-android: :material-coffee:
- `POST /session/:sessionId/appium/device/unlock`
- :octicons-arrow-right-24: `mobile: unlock` execute method :material-apple: :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: unlock` execute method :material-apple: :material-android: :material-coffee:
- `POST /session/:sessionId/appium/element/:elementId/value`
- :octicons-arrow-right-24: `POST /session/:sessionId/element/:elementId/value` :simple-appium:
- :octicons-arrow-right-24: `POST /session/:sessionId/element/:elementId/value` :simple-appium:
- `POST /session/:sessionId/appium/element/:elementId/replace_value`
- :octicons-arrow-right-24: `POST /session/:sessionId/element/:elementId/value` :simple-appium:
- :octicons-arrow-right-24: `POST /session/:sessionId/element/:elementId/value` :simple-appium:
- `POST /session/:sessionId/appium/getPerformanceData`
- :octicons-arrow-right-24: `mobile: getPerformanceData` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: getPerformanceData` execute method :material-android: :material-coffee:
- `POST /session/:sessionId/appium/performanceData/types`
- :octicons-arrow-right-24: `mobile: getPerformanceDataTypes` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `mobile: getPerformanceDataTypes` execute method :material-android: :material-coffee:
- `POST /session/:sessionId/appium/receive_async_response`
- :octicons-arrow-right-24: `POST /session/:sessionId/execute/async` :simple-appium:
- :octicons-arrow-right-24: `POST /session/:sessionId/execute/async` :simple-appium:
- `POST /session/:sessionId/appium/simulator/toggle_touch_id_enrollment`
- :octicons-arrow-right-24: `mobile: enrollBiometric` execute method :material-apple: [^sim]
- :octicons-arrow-right-24: `mobile: enrollBiometric` execute method :material-apple: [^sim]
- `POST /session/:sessionId/appium/simulator/touch_id`
- :octicons-arrow-right-24: `mobile: sendBiometricMatch` execute method :material-apple: [^sim]
- :octicons-arrow-right-24: `mobile: sendBiometricMatch` execute method :material-apple: [^sim]
- `POST /session/:sessionId/appium/start_recording_screen`
- :octicons-check-24: Moved to drivers: :material-apple: :material-android: :material-coffee: :material-apple-finder: :material-microsoft-windows:
- :octicons-arrow-right-24: `mobile: startXCTestScreenRecording` execute method :material-apple:
- :octicons-arrow-right-24: `mobile: startMediaProjectionRecording` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `macos: startRecordingScreen` or `macos: startNativeScreenRecording` execute methods :material-apple-finder:
- :octicons-arrow-right-24: `windows: startRecordingScreen` execute method :material-microsoft-windows:
- :octicons-check-24: Moved to drivers: :material-apple: :material-android: :material-coffee: :material-apple-finder: :material-microsoft-windows:
- :octicons-arrow-right-24: `mobile: startXCTestScreenRecording` execute method :material-apple:
- :octicons-arrow-right-24: `mobile: startMediaProjectionRecording` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `macos: startRecordingScreen` or `macos: startNativeScreenRecording` execute methods :material-apple-finder:
- :octicons-arrow-right-24: `windows: startRecordingScreen` execute method :material-microsoft-windows:
- `POST /session/:sessionId/appium/stop_recording_screen`
- :octicons-check-24: Moved to drivers: :material-apple: :material-android: :material-coffee: :material-apple-finder: :material-microsoft-windows:
- :octicons-arrow-right-24: `mobile: stopXCTestScreenRecording` execute method :material-apple:
- :octicons-arrow-right-24: `mobile: stopMediaProjectionRecording` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `macos: stopRecordingScreen` or `macos: stopNativeScreenRecording` execute methods :material-apple-finder:
- :octicons-arrow-right-24: `windows: stopRecordingScreen` execute method :material-microsoft-windows:
- :octicons-check-24: Moved to drivers: :material-apple: :material-android: :material-coffee: :material-apple-finder: :material-microsoft-windows:
- :octicons-arrow-right-24: `mobile: stopXCTestScreenRecording` execute method :material-apple:
- :octicons-arrow-right-24: `mobile: stopMediaProjectionRecording` execute method :material-android: :material-coffee:
- :octicons-arrow-right-24: `macos: stopRecordingScreen` or `macos: stopNativeScreenRecording` execute methods :material-apple-finder:
- :octicons-arrow-right-24: `windows: stopRecordingScreen` execute method :material-microsoft-windows:
- `GET /session/:sessionId/application_cache/status`
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- `POST /session/:sessionId/buttondown`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: [W3C Actions API](https://www.selenium.dev/documentation/webdriver/actions_api/) (`pointerDown`) :simple-appium:
- :octicons-arrow-right-24: `windows: keys` execute method :material-microsoft-windows:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: [W3C Actions API](https://www.selenium.dev/documentation/webdriver/actions_api/) (`pointerDown`) :simple-appium:
- :octicons-arrow-right-24: `windows: keys` execute method :material-microsoft-windows:
- `POST /session/:sessionId/buttonup`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerUp`) :simple-appium:
- :octicons-arrow-right-24: `windows: keys` execute method :material-microsoft-windows:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerUp`) :simple-appium:
- :octicons-arrow-right-24: `windows: keys` execute method :material-microsoft-windows:
- `POST /session/:sessionId/click`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerDown` & `pointerUp`) :simple-appium:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerDown` & `pointerUp`) :simple-appium:
- `POST /session/:sessionId/dismiss_alert`
- :octicons-arrow-right-24: `POST /session/:sessionId/alert/dismiss` :simple-appium:
- :octicons-arrow-right-24: `POST /session/:sessionId/alert/dismiss` :simple-appium:
- `POST /session/:sessionId/doubleclick`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerDown` & `pointerUp`) :simple-appium:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerDown` & `pointerUp`) :simple-appium:
- `POST /session/:sessionId/element/active`
- :octicons-arrow-right-24: `GET /session/:sessionId/element/active` :simple-appium:
- :octicons-arrow-right-24: `GET /session/:sessionId/element/active` :simple-appium:
- `GET /session/:sessionId/element/:elementId/equals/:otherId`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- `GET /session/:sessionId/element/:elementId/location`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `GET /session/:sessionId/element/:elementId/rect` :simple-appium:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `GET /session/:sessionId/element/:elementId/rect` :simple-appium:
- `GET /session/:sessionId/element/:elementId/location_in_view`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- `GET /session/:sessionId/element/:elementId/pageIndex`
- :octicons-no-entry-24: MJSONWP protocol command with no direct replacement
- :octicons-no-entry-24: MJSONWP protocol command with no direct replacement
- `GET /session/:sessionId/element/:elementId/size`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `GET /session/:sessionId/element/:elementId/rect` :simple-appium:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `GET /session/:sessionId/element/:elementId/rect` :simple-appium:
- `POST /session/:sessionId/element/:elementId/submit`
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- `POST /session/:sessionId/execute`
- :octicons-arrow-right-24: `POST /session/:sessionId/execute/sync` :simple-appium:
- :octicons-arrow-right-24: `POST /session/:sessionId/execute/sync` :simple-appium:
- `POST /session/:sessionId/execute_async`
- :octicons-arrow-right-24: `POST /session/:sessionId/execute/async` :simple-appium:
- :octicons-arrow-right-24: `POST /session/:sessionId/execute/async` :simple-appium:
- `POST /session/:sessionId/keys`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`keyDown` & `keyUp`) :simple-appium:
- Selenium-based clients can also use [Send Keys](https://www.selenium.dev/documentation/webdriver/actions_api/keyboard/#send-keys)
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`keyDown` & `keyUp`) :simple-appium:
- Selenium-based clients can also use [Send Keys](https://www.selenium.dev/documentation/webdriver/actions_api/keyboard/#send-keys)
- `GET /session/:sessionId/local_storage`
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- `POST /session/:sessionId/local_storage`
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- `DELETE /session/:sessionId/local_storage`
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- `GET /session/:sessionId/local_storage/key/:key`
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- `DELETE /session/:sessionId/local_storage/key/:key`
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- `GET /session/:sessionId/local_storage/size`
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- `POST /session/:sessionId/log`
- :octicons-arrow-right-24: `POST /session/:sessionId/se/log` :simple-appium:
- :octicons-arrow-right-24: `POST /session/:sessionId/se/log` :simple-appium:
- `GET /session/:sessionId/log/types`
- :octicons-arrow-right-24: `GET /session/:sessionId/se/log/types` :simple-appium:
- :octicons-arrow-right-24: `GET /session/:sessionId/se/log/types` :simple-appium:
- `POST /session/:sessionId/moveto`
- :octicons-arrow-right-24: W3C Actions API (`pointerMove`) :simple-appium:
- Selenium-based clients can also use [Move by Offset](https://www.selenium.dev/documentation/webdriver/actions_api/mouse/#move-by-offset)
- :octicons-arrow-right-24: W3C Actions API (`pointerMove`) :simple-appium:
- Selenium-based clients can also use [Move by Offset](https://www.selenium.dev/documentation/webdriver/actions_api/mouse/#move-by-offset)
- `GET /session/:sessionId/screenshot/:elementId`
- :octicons-arrow-right-24: `GET /session/:sessionId/element/:elementId/screenshot` :simple-appium:
- :octicons-arrow-right-24: `GET /session/:sessionId/element/:elementId/screenshot` :simple-appium:
- `GET /session/:sessionId/session_storage`
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- `POST /session/:sessionId/session_storage`
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- `DELETE /session/:sessionId/session_storage`
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- `GET /session/:sessionId/session_storage/key/:key`
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- `DELETE /session/:sessionId/session_storage/key/:key`
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- `GET /session/:sessionId/session_storage/size`
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- :octicons-no-entry-24: JSONWP protocol command with no direct replacement
- `POST /session/:sessionId/timeouts/async_script`
- :octicons-arrow-right-24: `POST /session/:sessionId/timeouts` :simple-appium:
- :octicons-arrow-right-24: `POST /session/:sessionId/timeouts` :simple-appium:
- `POST /session/:sessionId/timeouts/implicit_wait`
- :octicons-arrow-right-24: `POST /session/:sessionId/timeouts` :simple-appium:
- :octicons-arrow-right-24: `POST /session/:sessionId/timeouts` :simple-appium:
- `POST /session/:sessionId/touch/click`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerDown` & `pointerUp`) :simple-appium:
- Selenium-based clients can also use [Click and Release](https://www.selenium.dev/documentation/webdriver/actions_api/mouse/#click-and-release)
- :octicons-arrow-right-24: `mobile: tap` or `mobile: tapWithNumberOfTaps` execute methods :material-apple:
- :octicons-arrow-right-24: `mobile: clickGesture` execute method :material-android:
- :octicons-arrow-right-24: `mobile: clickAction` execute method :material-coffee:
- :octicons-arrow-right-24: `macos: click`, `macos: rightClick`, `macos: press` or `macos: tap` execute methods :material-apple-finder:
- :octicons-arrow-right-24: `windows: click` execute method :material-microsoft-windows:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerDown` & `pointerUp`) :simple-appium:
- Selenium-based clients can also use [Click and Release](https://www.selenium.dev/documentation/webdriver/actions_api/mouse/#click-and-release)
- :octicons-arrow-right-24: `mobile: tap` or `mobile: tapWithNumberOfTaps` execute methods :material-apple:
- :octicons-arrow-right-24: `mobile: clickGesture` execute method :material-android:
- :octicons-arrow-right-24: `mobile: clickAction` execute method :material-coffee:
- :octicons-arrow-right-24: `macos: click`, `macos: rightClick`, `macos: press` or `macos: tap` execute methods :material-apple-finder:
- :octicons-arrow-right-24: `windows: click` execute method :material-microsoft-windows:
- `POST /session/:sessionId/touch/doubleclick`
- :octicons-arrow-right-24: W3C Actions API (`pointerDown` & `pointerUp`) :simple-appium:
- Selenium-based clients can also use [Double Click](https://www.selenium.dev/documentation/webdriver/actions_api/mouse/#double-click)
- :octicons-arrow-right-24: `mobile: doubleTap` or `mobile: tapWithNumberOfTaps` execute methods :material-apple:
- :octicons-arrow-right-24: `mobile: doubleClickGesture` execute method :material-android:
- :octicons-arrow-right-24: `mobile: clickAction` execute method :material-coffee:
- :octicons-arrow-right-24: `macos: doubleClick` or `macos: doubleTap` execute methods :material-apple-finder:
- :octicons-arrow-right-24: `windows: click` execute method :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerDown` & `pointerUp`) :simple-appium:
- Selenium-based clients can also use [Double Click](https://www.selenium.dev/documentation/webdriver/actions_api/mouse/#double-click)
- :octicons-arrow-right-24: `mobile: doubleTap` or `mobile: tapWithNumberOfTaps` execute methods :material-apple:
- :octicons-arrow-right-24: `mobile: doubleClickGesture` execute method :material-android:
- :octicons-arrow-right-24: `mobile: clickAction` execute method :material-coffee:
- :octicons-arrow-right-24: `macos: doubleClick` or `macos: doubleTap` execute methods :material-apple-finder:
- :octicons-arrow-right-24: `windows: click` execute method :material-microsoft-windows:
- `POST /session/:sessionId/touch/down`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerDown`) :simple-appium:
- :octicons-arrow-right-24: `windows: keys` execute method :material-microsoft-windows:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerDown`) :simple-appium:
- :octicons-arrow-right-24: `windows: keys` execute method :material-microsoft-windows:
- `POST /session/:sessionId/touch/flick`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerDown`, `pointerMove` & `pointerUp`) :simple-appium:
- :octicons-arrow-right-24: `mobile: flingGesture` execute method :material-android:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerDown`, `pointerMove` & `pointerUp`) :simple-appium:
- :octicons-arrow-right-24: `mobile: flingGesture` execute method :material-android:
- `POST /session/:sessionId/touch/longclick`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerDown`, `pause` & `pointerUp`) :simple-appium:
- :octicons-arrow-right-24: `mobile: touchAndHold` execute method :material-apple:
- :octicons-arrow-right-24: `mobile: longClickGesture` execute method :material-android:
- :octicons-arrow-right-24: `mobile: clickAction` execute method :material-coffee:
- :octicons-arrow-right-24: `macos: press` execute method :material-apple-finder:
- :octicons-arrow-right-24: `windows: click` execute method :material-microsoft-windows:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerDown`, `pause` & `pointerUp`) :simple-appium:
- :octicons-arrow-right-24: `mobile: touchAndHold` execute method :material-apple:
- :octicons-arrow-right-24: `mobile: longClickGesture` execute method :material-android:
- :octicons-arrow-right-24: `mobile: clickAction` execute method :material-coffee:
- :octicons-arrow-right-24: `macos: press` execute method :material-apple-finder:
- :octicons-arrow-right-24: `windows: click` execute method :material-microsoft-windows:
- `POST /session/:sessionId/touch/multi/perform`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `POST /session/:sessionId/actions` :simple-appium:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `POST /session/:sessionId/actions` :simple-appium:
- `POST /session/:sessionId/touch/move`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerMove`) :simple-appium:
- Selenium-based clients can also use [Move by Offset](https://www.selenium.dev/documentation/webdriver/actions_api/mouse/#move-by-offset)
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerMove`) :simple-appium:
- Selenium-based clients can also use [Move by Offset](https://www.selenium.dev/documentation/webdriver/actions_api/mouse/#move-by-offset)
- `POST /session/:sessionId/touch/perform`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `POST /session/:sessionId/actions` :simple-appium:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `POST /session/:sessionId/actions` :simple-appium:
- `POST /session/:sessionId/touch/scroll`
- :octicons-arrow-right-24: W3C Actions API (`pointerDown`, `pointerMove` & `pointerUp`) :simple-appium:
- :octicons-arrow-right-24: `mobile: scroll` or `mobile: swipe` execute methods :material-apple:
- :octicons-arrow-right-24: `mobile: scrollGesture` or `mobile: swipeGesture` execute methods :material-android:
- :octicons-arrow-right-24: `mobile: swipe` execute method :material-coffee:
- :octicons-arrow-right-24: `macos: scroll` or `macos: swipe` execute methods :material-apple-finder:
- :octicons-arrow-right-24: `windows: scroll` execute method :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerDown`, `pointerMove` & `pointerUp`) :simple-appium:
- :octicons-arrow-right-24: `mobile: scroll` or `mobile: swipe` execute methods :material-apple:
- :octicons-arrow-right-24: `mobile: scrollGesture` or `mobile: swipeGesture` execute methods :material-android:
- :octicons-arrow-right-24: `mobile: swipe` execute method :material-coffee:
- :octicons-arrow-right-24: `macos: scroll` or `macos: swipe` execute methods :material-apple-finder:
- :octicons-arrow-right-24: `windows: scroll` execute method :material-microsoft-windows:
- `POST /session/:sessionId/touch/up`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerUp`) :simple-appium:
- :octicons-arrow-right-24: `windows: keys` execute method :material-microsoft-windows:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: W3C Actions API (`pointerUp`) :simple-appium:
- :octicons-arrow-right-24: `windows: keys` execute method :material-microsoft-windows:
- `GET /session/:sessionId/window_handle`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `GET /session/:sessionId/window` :simple-appium:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `GET /session/:sessionId/window` :simple-appium:
- `GET /session/:sessionId/window_handles`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `GET /session/:sessionId/window/handles` :simple-appium:
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `GET /session/:sessionId/window/handles` :simple-appium:
- `GET /session/:sessionId/window/handle`
- :octicons-arrow-right-24: `GET /session/:sessionId/window` :simple-appium:
- :octicons-arrow-right-24: `GET /session/:sessionId/window` :simple-appium:
- `POST /session/:sessionId/window/:windowhandle/maximize`
- :octicons-arrow-right-24: `POST /session/:sessionId/window/maximize` :simple-appium:
- :fontawesome-solid-triangle-exclamation: Only supported for the current window
- :octicons-arrow-right-24: `POST /session/:sessionId/window/maximize` :simple-appium:
- :fontawesome-solid-triangle-exclamation: Only supported for the current window
- `GET /session/:sessionId/window/:windowhandle/position`
- :octicons-arrow-right-24: `GET /session/:sessionId/window/rect` :simple-appium:
- :fontawesome-solid-triangle-exclamation: Only supported for the current window
- :octicons-arrow-right-24: `GET /session/:sessionId/window/rect` :simple-appium:
- :fontawesome-solid-triangle-exclamation: Only supported for the current window
- `POST /session/:sessionId/window/:windowhandle/position`
- :octicons-arrow-right-24: `POST /session/:sessionId/window/rect` :simple-appium:
- :fontawesome-solid-triangle-exclamation: Only supported for the current window
- :octicons-arrow-right-24: `POST /session/:sessionId/window/rect` :simple-appium:
- :fontawesome-solid-triangle-exclamation: Only supported for the current window
- `GET /session/:sessionId/window/:windowhandle/size`
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `GET /session/:sessionId/window/rect` :simple-appium:
- :fontawesome-solid-triangle-exclamation: Only supported for the current window
- :octicons-check-24: Moved to drivers: :material-microsoft-windows:
- :octicons-arrow-right-24: `GET /session/:sessionId/window/rect` :simple-appium:
- :fontawesome-solid-triangle-exclamation: Only supported for the current window
### Modified
@@ -438,22 +438,22 @@ parameters (note that no new parameters have been added). Each endpoint lists th
longer accepts, as well as the parameters it continues to accept in Appium 3.
- `POST /session`
- :octicons-x-24: `desiredCapabilities`, `requiredCapabilities`
- :octicons-check-24: `capabilities`
- :octicons-x-24: `desiredCapabilities`, `requiredCapabilities`
- :octicons-check-24: `capabilities`
- `POST /session/:sessionId/alert/text`
- :octicons-x-24: `value`
- :octicons-check-24: `text`
- :octicons-x-24: `value`
- :octicons-check-24: `text`
- `GET /session/:sessionId/appium/device/system_time`
- :octicons-x-24: `format`
- :octicons-check-24: None
- :octicons-x-24: `format`
- :octicons-check-24: None
- `POST /session/:sessionId/element/:elementId/value`
- :octicons-x-24: `value`
- :octicons-check-24: `text`
- :octicons-x-24: `value`
- :octicons-check-24: `text`
- `POST /session/:sessionId/timeouts`
- :octicons-x-24: `type`, `ms`
- :octicons-check-24: `script`, `pageLoad`, `implicit`
- :octicons-x-24: `type`, `ms`
- :octicons-check-24: `script`, `pageLoad`, `implicit`
- `POST /session/:sessionId/window`
- :octicons-x-24: `name`
- :octicons-check-24: `handle`
- :octicons-x-24: `name`
- :octicons-check-24: `handle`
[^sim]: Supported in emulators/simulators only

View File

@@ -1,6 +1,7 @@
---
hide:
- toc
title: Session Settings
---

View File

@@ -1,6 +1,7 @@
---
hide:
- toc
title: SSL/TLS/SPDY Support
---

View File

@@ -1,6 +1,7 @@
---
hide:
- toc
title: Intro to Appium Clients
---
@@ -111,8 +112,8 @@ System.Console.WriteLine(driver.PageSource);
Each of these scripts, despite being in different languages, does the same thing under the hood:
1. Call `Find Element` with a `using` parameter of `xpath` and a `value` parameter expressing the
XPath query used to find an element. (If you're confused about these terms, you might find an
introduction to Appium or Selenium useful)
XPath query used to find an element. (If you're confused about these terms, you might find an
introduction to Appium or Selenium useful)
2. Call `Click Element` with the ID of the element found in the previous call.
3. Call `Get Element Text` with the ID of the same element, and print it to the console.
4. Call `Get Page Source` to retrieve the page/app source and print it to the console.

View File

@@ -1,6 +1,7 @@
---
hide:
- toc
title: Appium in a Nutshell
---

View File

@@ -1,6 +1,7 @@
---
hide:
- toc
title: Next Steps
---

View File

@@ -1,6 +1,7 @@
---
hide:
- toc
title: Write a Test (Java)
---