mirror of
https://github.com/appium/appium.git
synced 2026-02-21 18:59:08 -06:00
docs(appium): Update documentation translations (#21523)
Co-authored-by: mykola-mokhnach <7767781+mykola-mokhnach@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
b915c22283
commit
a0a9d27f05
@@ -1,7 +1,4 @@
|
||||
---
|
||||
hide:
|
||||
- toc
|
||||
|
||||
title: Appium Clients
|
||||
---
|
||||
|
||||
@@ -9,37 +6,138 @@ You need a client to write and run Appium scripts. You'll want to become very
|
||||
familiar with your client documentation (as well as the documentation of any Selenium client that
|
||||
the Appium client depends on) since that will be your primary interface to Appium.
|
||||
|
||||
To learn more about clients, read our [Client Intro](../intro/clients.md).
|
||||
|
||||
### Official Clients
|
||||
|
||||
These clients are currently maintained by the Appium team:
|
||||
|
||||
| Client | Language |
|
||||
| --------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- |
|
||||
| [Appium Java client](https://github.com/appium/java-client) | Java |
|
||||
| [Appium Python client](https://github.com/appium/python-client) | Python |
|
||||
| [Appium Ruby Core client](https://github.com/appium/ruby_lib_core) (Recommended)<br>[Appium Ruby client](https://github.com/appium/ruby_lib) | Ruby |
|
||||
| [Appium .NET client](https://github.com/appium/dotnet-client) | C# |
|
||||
|
||||
### Other Clients
|
||||
|
||||
These clients are not maintained by the Appium team and can be used with other languages:
|
||||
|
||||
| Client | Language |
|
||||
| ---------------------------------------------------------------------------------------------------- | ----------------------- |
|
||||
| [WebdriverIO](https://webdriver.io/docs/appium) | Node.js |
|
||||
| [Nightwatch.js](https://nightwatchjs.org/guide/mobile-app-testing/introduction.html) | Node.js |
|
||||
| [RobotFramework](https://github.com/serhatbolsu/robotframework-appiumlibrary) | DSL |
|
||||
| [multicatch's appium-client](https://github.com/multicatch/appium-client) | Rust |
|
||||
| [SwiftAppium](https://github.com/milcgroup/swiftappium) | Swift |
|
||||
|
||||
In general, any W3C WebDriver spec-compatible client will also integrate well with Appium, though
|
||||
some Appium-specific commands may not be implemented in other clients.
|
||||
To learn more about clients, check out the [Client Intro](../intro/clients.md).
|
||||
|
||||
!!! note
|
||||
|
||||
```
|
||||
If you maintain an Appium client that you would like to be listed in the Appium docs, feel free
|
||||
to make a PR to add it to this section with a link to the documentation for the client.
|
||||
If you maintain an Appium client that you would like to be listed here, feel free to create a PR!
|
||||
```
|
||||
|
||||
## Official Clients
|
||||
|
||||
These clients are currently maintained by the Appium team:
|
||||
|
||||
### [Java Client](https://github.com/appium/java-client)
|
||||
|
||||
Language: :fontawesome-brands-java: Java
|
||||
|
||||
\=== "Setup With Maven"
|
||||
|
||||
````
|
||||
```xml
|
||||
<dependency>
|
||||
<groupId>io.appium</groupId>
|
||||
<artifactId>java-client</artifactId>
|
||||
<version>${version.you.require}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
```
|
||||
````
|
||||
|
||||
\=== "Setup With Gradle"
|
||||
|
||||
````
|
||||
```groovy
|
||||
dependencies {
|
||||
testImplementation 'io.appium:java-client:${version.you.require}'
|
||||
}
|
||||
```
|
||||
````
|
||||
|
||||
### [Python Client](https://github.com/appium/python-client)
|
||||
|
||||
Language: :fontawesome-brands-python: Python
|
||||
|
||||
```sh title="Install From PyPi"
|
||||
pip install Appium-Python-Client
|
||||
```
|
||||
|
||||
### [Ruby Core Client](https://github.com/appium/ruby_lib_core)
|
||||
|
||||
Language: :material-language-ruby: Ruby
|
||||
|
||||
```sh title="Install From RubyGems"
|
||||
gem install appium_lib_core
|
||||
```
|
||||
|
||||
### [Ruby Client](https://github.com/appium/ruby_lib)
|
||||
|
||||
Language: :material-language-ruby: Ruby
|
||||
|
||||
This client is a wrapper for the Ruby Core Client with several helper methods, though this may
|
||||
add additional complexity, therefore the Ruby Core Client is recommended instead.
|
||||
|
||||
```sh title="Install From RubyGems"
|
||||
gem install appium_lib
|
||||
```
|
||||
|
||||
### [.NET Client](https://github.com/appium/dotnet-client)
|
||||
|
||||
Language: :simple-dotnet: C#
|
||||
|
||||
```sh title="Install Using .NET CLI"
|
||||
dotnet add package Appium.WebDriver
|
||||
```
|
||||
|
||||
## Other Clients
|
||||
|
||||
These clients are not maintained by the Appium team and can be used with other languages.
|
||||
|
||||
In general, any W3C WebDriver spec-compatible client will also integrate well with Appium, though
|
||||
some Appium-specific commands may not be implemented in other clients.
|
||||
|
||||
### [WebdriverIO](https://webdriver.io/docs/appium)
|
||||
|
||||
Language: :material-language-javascript: :material-language-typescript: JavaScript/TypeScript
|
||||
|
||||
```sh title="Setup Using npm"
|
||||
npm init wdio@latest .
|
||||
```
|
||||
|
||||
### [Nightwatch.js](https://nightwatchjs.org/guide/mobile-app-testing/introduction.html)
|
||||
|
||||
Language: :material-language-javascript: :material-language-typescript: JavaScript/TypeScript
|
||||
|
||||
\=== "Setup For Android"
|
||||
|
||||
````
|
||||
```sh
|
||||
npx @nightwatch/mobile-helper android --appium
|
||||
```
|
||||
````
|
||||
|
||||
\=== "Setup For iOS"
|
||||
|
||||
````
|
||||
```sh
|
||||
npx @nightwatch/mobile-helper ios --appium
|
||||
```
|
||||
````
|
||||
|
||||
### [RobotFramework AppiumLibrary](https://github.com/serhatbolsu/robotframework-appiumlibrary)
|
||||
|
||||
Language: :simple-robotframework: Robot Framework
|
||||
|
||||
```sh title="Install From PyPi"
|
||||
pip install robotframework-appiumlibrary
|
||||
```
|
||||
|
||||
### [multicatch's appium-client](https://github.com/multicatch/appium-client)
|
||||
|
||||
Language: :simple-rust: Rust
|
||||
|
||||
```sh title="Install Using Cargo"
|
||||
cargo add appium-client
|
||||
```
|
||||
|
||||
### [SwiftAppium](https://github.com/milcgroup/swiftappium)
|
||||
|
||||
Language: :material-language-swift: Swift
|
||||
|
||||
```sh title="Install and Setup"
|
||||
git clone https://github.com/milcgroup/SwiftAppium.git
|
||||
cd SwiftAppium
|
||||
swift build
|
||||
swift run swiftappium
|
||||
```
|
||||
|
||||
@@ -1,55 +1,219 @@
|
||||
---
|
||||
hide:
|
||||
- toc
|
||||
|
||||
title: Appium Drivers
|
||||
---
|
||||
|
||||
You can't use Appium without at least one driver! Click on the link for each driver to see the
|
||||
specific installation instructions and documentation for that driver.
|
||||
|
||||
Generally, drivers can be installed using their listed installation key, with the following command:
|
||||
|
||||
```
|
||||
appium driver install <installation key>
|
||||
```
|
||||
You can't use Appium without a driver! Here you can find a list of all known Appium drivers,
|
||||
along with their installation commands and links to their documentation.
|
||||
|
||||
To learn more about drivers, check out the [Driver Intro](../intro/drivers.md).
|
||||
|
||||
### Official Drivers
|
||||
|
||||
These drivers are currently maintained by the Appium team:
|
||||
|
||||
| Driver | Installation Key | Platform(s) | Mode(s) | Important Notes |
|
||||
| -------------------------------------------------------------------- | ---------------- | ------------------------------ | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| [Chromium](https://github.com/appium/appium-chromium-driver) | `chromium` | macOS, Windows, Linux | Web | |
|
||||
| [Espresso](https://github.com/appium/appium-espresso-driver) | `espresso` | Android | Native | |
|
||||
| [Gecko](https://github.com/appium/appium-geckodriver) | `gecko` | macOS, Windows, Linux, Android | Web | |
|
||||
| [Mac2](https://github.com/appium/appium-mac2-driver) | `mac2` | macOS | Native | |
|
||||
| [Safari](https://github.com/appium/appium-safari-driver) | `safari` | macOS, iOS | Web | |
|
||||
| [UiAutomator2](https://github.com/appium/appium-uiautomator2-driver) | `uiautomator2` | Android | Native, Hybrid, Web | |
|
||||
| [XCUITest](https://github.com/appium/appium-xcuitest-driver) | `xcuitest` | iOS | Native, Hybrid, Web | |
|
||||
| [Windows](https://github.com/appium/appium-windows-driver) | `windows` | Windows | Native | Only the Node.js-based driver part is maintained by the Appium team. The server part (WinAppDriver executable) has not been maintained by Microsoft since 2022 |
|
||||
|
||||
### Other Drivers
|
||||
|
||||
These drivers are not maintained by the Appium team and can be used to target additional platforms:
|
||||
|
||||
| Driver | Installation Key | Platform(s) | Mode(s) | Supported By | Important Notes |
|
||||
| -------------------------------------------------------------------------------------------------- | ------------------------------------------------ | -------------------------------- | -------------------------- | ------------------------------------- | ------------------------- |
|
||||
| [Flutter](https://github.com/appium/appium-flutter-driver) | `--source=npm appium-flutter-driver` | iOS, Android | Native | Appium Team/Community | |
|
||||
| [Flutter Integration](https://github.com/AppiumTestDistribution/appium-flutter-integration-driver) | `--source=npm appium-flutter-integration-driver` | iOS, Android | Native | Community / `@AppiumTestDistribution` | |
|
||||
| [LG WebOS](https://github.com/headspinio/appium-lg-webos-driver) | `--source=npm appium-lg-webos-driver` | LG TV | Web | HeadSpin | |
|
||||
| [Linux](https://github.com/fantonglang/appium-linux-driver) | `--source=npm @stdspa/appium-linux-driver` | Linux | Native | `@fantonglang` | Not maintained since 2022 |
|
||||
| [NovaWindows](https://github.com/AutomateThePlanet/appium-novawindows-driver) | `--source=npm appium-novawindows-driver` | Windows | Native | Community / Automate The Planet | |
|
||||
| [Roku](https://github.com/headspinio/appium-roku-driver) | `--source=npm @headspinio/appium-roku-driver` | Roku | Native | HeadSpin | |
|
||||
| [Tizen](https://github.com/Samsung/appium-tizen-driver) | `--source=npm appium-tizen-driver` | Android | Native | Community / Samsung | Not maintained since 2020 |
|
||||
| [TizenTV](https://github.com/headspinio/appium-tizen-tv-driver) | `--source=npm appium-tizen-tv-driver` | Samsung TV | Web | HeadSpin | |
|
||||
| [Youi](https://github.com/YOU-i-Labs/appium-youiengine-driver) | `--source=npm appium-youiengine-driver` | iOS, Android, macOS, Linux, tvOS | Native | Community / You.i | Not maintained since 2022 |
|
||||
|
||||
!!! note
|
||||
|
||||
```
|
||||
If you maintain an Appium driver that you would like to be listed in the Appium docs, feel free
|
||||
to make a PR to add it to this section with a link to the driver documentation.
|
||||
If you maintain an Appium driver that you would like to be listed here, feel free to create a PR!
|
||||
```
|
||||
|
||||
## Official Drivers
|
||||
|
||||
These drivers are currently maintained by the Appium team:
|
||||
|
||||
### [Chromium](https://github.com/appium/appium-chromium-driver)
|
||||
|
||||
- Target: Desktop and mobile Chromium browsers (Chrome, Microsoft Edge, etc.)
|
||||
- Mode: Web
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install chromium
|
||||
```
|
||||
|
||||
### [Espresso](https://github.com/appium/appium-espresso-driver)
|
||||
|
||||
- Target: Android applications
|
||||
- Mode: Native
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install espresso
|
||||
```
|
||||
|
||||
### [Gecko](https://github.com/appium/appium-geckodriver)
|
||||
|
||||
- Target: Desktop and mobile Gecko browsers (Firefox)
|
||||
- Mode: Web
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install gecko
|
||||
```
|
||||
|
||||
### [Mac2](https://github.com/appium/appium-mac2-driver)
|
||||
|
||||
- Target: macOS applications
|
||||
- Mode: Native
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install mac2
|
||||
```
|
||||
|
||||
### [Safari](https://github.com/appium/appium-safari-driver)
|
||||
|
||||
- Target: Desktop and mobile Safari browsers
|
||||
- Mode: Web
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install safari
|
||||
```
|
||||
|
||||
### [UiAutomator2](https://github.com/appium/appium-uiautomator2-driver)
|
||||
|
||||
- Target: Android, Android TV, Android Wear applications
|
||||
- Modes: Native, Hybrid, Web
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install uiautomator2
|
||||
```
|
||||
|
||||
### [Windows](https://github.com/appium/appium-windows-driver)
|
||||
|
||||
!!! warning
|
||||
|
||||
```
|
||||
Only the Node.js-based driver part is maintained by the Appium team. The server part
|
||||
(WinAppDriver executable) is provided by Microsoft, but has not been maintained since 2022.
|
||||
```
|
||||
|
||||
- Target: Windows applications
|
||||
- Mode: Native
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install windows
|
||||
```
|
||||
|
||||
### [XCUITest](https://appium.github.io/appium-xcuitest-driver/)
|
||||
|
||||
- Target: iOS, iPadOS, tvOS applications
|
||||
- Modes: Native, Hybrid, Web
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install xcuitest
|
||||
```
|
||||
|
||||
## Other Drivers
|
||||
|
||||
These drivers are not maintained by the Appium team and can be used to target other platforms:
|
||||
|
||||
### [Flutter](https://github.com/appium/appium-flutter-driver)
|
||||
|
||||
- Target: iOS and Android applications built with Flutter
|
||||
- Mode: Native
|
||||
- Supported by: Appium Team / Community
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install --source=npm appium-flutter-driver
|
||||
```
|
||||
|
||||
### [Flutter Integration](https://github.com/AppiumTestDistribution/appium-flutter-integration-driver)
|
||||
|
||||
- Target: iOS and Android applications built with Flutter
|
||||
- Mode: Native
|
||||
- Supported by: Community / `@AppiumTestDistribution`
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install --source=npm appium-flutter-integration-driver
|
||||
```
|
||||
|
||||
### [LG WebOS](https://github.com/headspinio/appium-lg-webos-driver)
|
||||
|
||||
- Target: LG TV web applications
|
||||
- Mode: Web
|
||||
- Supported by: HeadSpin
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install --source=npm appium-lg-webos-driver
|
||||
```
|
||||
|
||||
### [Linux](https://github.com/fantonglang/appium-linux-driver)
|
||||
|
||||
!!! warning
|
||||
|
||||
```
|
||||
This driver has not been maintained since 2022 and requires a custom Appium installation
|
||||
```
|
||||
|
||||
- Target: Linux applications
|
||||
- Mode: Native
|
||||
- Supported by: `@fantonglang`
|
||||
|
||||
```sh title="Install This Driver"
|
||||
git clone https://github.com/fantonglang/appium
|
||||
cd appium
|
||||
yarn install
|
||||
node ./
|
||||
```
|
||||
|
||||
### [NovaWindows](https://github.com/AutomateThePlanet/appium-novawindows-driver)
|
||||
|
||||
!!! info
|
||||
|
||||
```
|
||||
This driver is recommended as a drop-in replacement for the partially unmaintained
|
||||
[Windows driver](#windows)
|
||||
```
|
||||
|
||||
- Target: Windows applications
|
||||
- Mode: Native
|
||||
- Supported by: Community / Automate The Planet
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install --source=npm appium-novawindows-driver
|
||||
```
|
||||
|
||||
### [Roku](https://github.com/headspinio/appium-roku-driver)
|
||||
|
||||
- Target: Roku channels (applications)
|
||||
- Mode: Native
|
||||
- Supported by: HeadSpin
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install --source=npm @headspinio/appium-roku-driver
|
||||
```
|
||||
|
||||
### [Tizen](https://github.com/Samsung/appium-tizen-driver)
|
||||
|
||||
!!! warning
|
||||
|
||||
```
|
||||
This driver has not been maintained since 2020 and is only compatible with Appium 1
|
||||
```
|
||||
|
||||
- Target: Tizen applications
|
||||
- Mode: Native
|
||||
- Supported by: Community / Samsung
|
||||
|
||||
```sh title="Install This Driver"
|
||||
npm install appium-tizen-driver
|
||||
```
|
||||
|
||||
### [TizenTV](https://github.com/headspinio/appium-tizen-tv-driver)
|
||||
|
||||
- Target: Tizen TV web applications
|
||||
- Mode: Web
|
||||
- Supported by: HeadSpin
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install --source=npm appium-tizen-tv-driver
|
||||
```
|
||||
|
||||
### [You.i Engine](https://github.com/YOU-i-Labs/appium-youiengine-driver)
|
||||
|
||||
!!! warning
|
||||
|
||||
```
|
||||
This driver has not been maintained since 2022 and is only compatible with Appium 1
|
||||
```
|
||||
|
||||
- Target: iOS, Android, macOS, Linux, tvOS applications built with You.i Engine
|
||||
- Mode: Native
|
||||
- Supported by: Community / You.i
|
||||
|
||||
```sh title="Install This Driver"
|
||||
npm install appium-youiengine-driver
|
||||
```
|
||||
|
||||
@@ -1,7 +1,4 @@
|
||||
---
|
||||
hide:
|
||||
- toc
|
||||
|
||||
title: Appium Plugins
|
||||
---
|
||||
|
||||
@@ -9,42 +6,135 @@ Plugins offer various ways to extend or modify Appium's behaviour. They are _com
|
||||
and are not needed for standard automation functionality, but you may find them to be useful
|
||||
for more specialised automation workflows.
|
||||
|
||||
Generally, plugins can be installed using their listed installation key, with the following command:
|
||||
|
||||
```
|
||||
appium plugin install <installation key>
|
||||
```
|
||||
|
||||
### Official Plugins
|
||||
|
||||
These plugins are are currently maintained by the Appium team:
|
||||
|
||||
| <div style="width:7em">Plugin</div> | <div style="width:8em">Installation Key</div> | Description |
|
||||
| --------------------------------------------------------------------------------------------- | --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| [Execute Driver](https://github.com/appium/appium/tree/master/packages/execute-driver-plugin) | `execute-driver` | Run entire batches of commands in a single call to the Appium server |
|
||||
| [Images](https://github.com/appium/appium/tree/master/packages/images-plugin) | `images` | Image matching and comparison features |
|
||||
| [Inspector](https://github.com/appium/appium-inspector/tree/main/plugins) | `inspector` | Integrate the [Appium Inspector](https://github.com/appium/appium-inspector) directly into your Appium server installation, providing a web-based interface for inspecting and interacting with your application under test. |
|
||||
| [Relaxed Caps](https://github.com/appium/appium/tree/master/packages/relaxed-caps-plugin) | `relaxed-caps` | Relax Appium's requirement for vendor prefixes on capabilities |
|
||||
| [Storage](https://github.com/appium/appium/tree/master/packages/storage-plugin) | `storage` | Server-side storage with client-side management |
|
||||
| [Universal XML](https://github.com/appium/appium/tree/master/packages/universal-xml-plugin) | `universal-xml` | Instead of the standard XML format for iOS and Android, use an XML definition that is the same across both platforms |
|
||||
|
||||
### Other Plugins
|
||||
|
||||
These plugins are not maintained by the Appium team and can provide additional functionality:
|
||||
|
||||
| <div style="width:6em">Plugin</div> | <div style="width:19em">Installation Key</div> | Description | <div style="width:13em">Supported By</div> |
|
||||
| ---------------------------------------------------------------------------------- | ---------------------------------------------- | ----------------------------------------------------------------------------------------------- | ------------------------------------------ |
|
||||
| [AltUnity](https://github.com/headspinio/appium-altunity-plugin) | `--source=npm appium-altunity-plugin` | Target Unity games and apps for automation with a new context, via the AltUnityTester framework | HeadSpin |
|
||||
| [Device Farm](https://github.com/AppiumTestDistribution/appium-device-farm) | `--source=npm appium-device-farm` | Manage and create driver sessions on connected Android devices and iOS simulators | `@AppiumTestDistribution` |
|
||||
| [Gestures](https://github.com/AppiumTestDistribution/appium-gestures-plugin) | `--source=npm appium-gestures-plugin` | Perform basic gestures using W3C Actions | `@AppiumTestDistribution` |
|
||||
| [Interceptor](https://github.com/AppiumTestDistribution/appium-interceptor-plugin) | `--source=npm appium-interceptor` | Intercept and mock API requests and responses | `@AppiumTestDistribution` |
|
||||
| [OCR](https://github.com/jlipps/appium-ocr-plugin) | `--source=npm appium-ocr-plugin` | Find elements via OCR text | `@jlipps` |
|
||||
| [Reporter](https://github.com/AppiumTestDistribution/appium-reporter-plugin) | `--source=npm appium-reporter-plugin` | Generate standalone consolidated HTML reports with screenshots | `@AppiumTestDistribution` |
|
||||
| [Wait](https://github.com/AppiumTestDistribution/appium-wait-plugin) | `--source=npm appium-wait-plugin` | Manage global element wait timeouts | `@AppiumTestDistribution` |
|
||||
|
||||
!!! note
|
||||
|
||||
```
|
||||
If you maintain an Appium plugin that you would like to be listed in the Appium docs, feel free
|
||||
to make a PR to add it to this section with a link to the documentation for the plugin.
|
||||
If you maintain an Appium plugin that you would like to be listed here, feel free to create a PR!
|
||||
```
|
||||
|
||||
## Official Plugins
|
||||
|
||||
These plugins are are currently maintained by the Appium team:
|
||||
|
||||
### [Execute Driver](https://github.com/appium/appium/tree/master/packages/execute-driver-plugin)
|
||||
|
||||
Run entire batches of commands in a single call to the Appium server
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install execute-driver
|
||||
```
|
||||
|
||||
### [Images](https://github.com/appium/appium/tree/master/packages/images-plugin)
|
||||
|
||||
Add support for image matching and comparison features
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install images
|
||||
```
|
||||
|
||||
### [Inspector](https://github.com/appium/appium-inspector/tree/main/plugins)
|
||||
|
||||
Integrate the [Appium Inspector](https://appium.github.io/appium-inspector/) directly into your
|
||||
Appium server installation
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install inspector
|
||||
```
|
||||
|
||||
### [Relaxed Caps](https://github.com/appium/appium/tree/master/packages/relaxed-caps-plugin)
|
||||
|
||||
Relax Appium's requirement for vendor prefixes on capabilities
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install relaxed-caps
|
||||
```
|
||||
|
||||
### [Storage](https://github.com/appium/appium/tree/master/packages/storage-plugin)
|
||||
|
||||
Add server-side storage with client-side management
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install storage
|
||||
```
|
||||
|
||||
### [Universal XML](https://github.com/appium/appium/tree/master/packages/universal-xml-plugin)
|
||||
|
||||
Translate the default iOS and Android XML formats into a common format
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install universal-xml
|
||||
```
|
||||
|
||||
## Other Plugins
|
||||
|
||||
These plugins are not maintained by the Appium team and can provide additional functionality:
|
||||
|
||||
### [AltUnity](https://github.com/headspinio/appium-altunity-plugin)
|
||||
|
||||
Target Unity games and apps for automation via the AltUnityTester framework
|
||||
|
||||
Supported by: HeadSpin
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install --source=npm appium-altunity-plugin
|
||||
```
|
||||
|
||||
### [Device Farm](https://github.com/AppiumTestDistribution/appium-device-farm)
|
||||
|
||||
Manage and create driver sessions on connected Android devices and iOS simulators
|
||||
|
||||
Supported by: `@AppiumTestDistribution`
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install --source=npm appium-device-farm
|
||||
```
|
||||
|
||||
### [Gestures](https://github.com/AppiumTestDistribution/appium-gestures-plugin)
|
||||
|
||||
Perform basic gestures using W3C Actions
|
||||
|
||||
Supported by: `@AppiumTestDistribution`
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install --source=npm appium-gestures-plugin
|
||||
```
|
||||
|
||||
### [Interceptor](https://github.com/AppiumTestDistribution/appium-interceptor-plugin)
|
||||
|
||||
Intercept and mock API requests and responses
|
||||
|
||||
Supported by: `@AppiumTestDistribution`
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install --source=npm appium-interceptor
|
||||
```
|
||||
|
||||
### [OCR](https://github.com/jlipps/appium-ocr-plugin)
|
||||
|
||||
Find elements via OCR text
|
||||
|
||||
Supported by: `@jlipps`
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install --source=npm appium-ocr-plugin
|
||||
```
|
||||
|
||||
### [Reporter](https://github.com/AppiumTestDistribution/appium-reporter-plugin)
|
||||
|
||||
Generate standalone consolidated HTML reports with screenshots
|
||||
|
||||
Supported by: `@AppiumTestDistribution`
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install --source=npm appium-reporter-plugin
|
||||
```
|
||||
|
||||
### [Wait](https://github.com/AppiumTestDistribution/appium-wait-plugin)
|
||||
|
||||
Manage global element wait timeouts
|
||||
|
||||
Supported by: `@AppiumTestDistribution`
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install --source=npm appium-wait-plugin
|
||||
```
|
||||
|
||||
@@ -1,42 +1,61 @@
|
||||
---
|
||||
hide:
|
||||
- toc
|
||||
|
||||
title: Appium-Related Tools
|
||||
---
|
||||
|
||||
There are several Appium tools that have been created to to assist with things not directly related
|
||||
to testing, such as Appium installation, test development, and more.
|
||||
The Appium ecosystem also includes several tools that have been created to assist with things not
|
||||
directly related to running tests, such as Appium installation, test development, and more.
|
||||
|
||||
### [Appium Inspector](https://appium.github.io/appium-inspector/latest/)
|
||||
!!! note
|
||||
|
||||
```
|
||||
If you maintain an Appium tool that you would like to be listed here, feel free to create a PR!
|
||||
```
|
||||
|
||||
## Official Tools
|
||||
|
||||
These tools are currently maintained by the Appium team:
|
||||
|
||||
### [Appium Inspector](https://appium.github.io/appium-inspector/)
|
||||
|
||||
Appium has a graphical client which can be used to inspect application screenshots, view the
|
||||
application hierarchy, run Appium commands, record app interactions, and more. It is very useful
|
||||
for Appium test development.
|
||||
application hierarchy, search for elements, run Appium commands, record app interactions, and more.
|
||||
It can be very useful for Appium test development.
|
||||
|
||||
Find downloads and more information on its GitHub page: [Appium Inspector](https://github.com/appium/appium-inspector)
|
||||
## Extension Tools
|
||||
|
||||
Appium driver or plugin developers can choose to include these tools in their driver/plugin:
|
||||
|
||||
### Appium Doctor
|
||||
|
||||
Appium Doctor is a command-line tool built into Appium drivers and plugins.
|
||||
The command is expected to be used to validate whether a driver or plugin has all of its prerequisites and other environment details set up correctly
|
||||
if the driver/plugin author implemented the `doctor` command.
|
||||
The Appium Doctor tool can be used to validate whether all prerequisites and other environment
|
||||
details needed for the driver/plugin have been set up correctly. The tool can be accessed via the
|
||||
[`doctor` command in the Appium CLI](../cli/extensions.md#doctor):
|
||||
|
||||
For example, `uiautomator2` driver provides the `doctor` command below.
|
||||
|
||||
```
|
||||
appium driver doctor uiautomator2
|
||||
```sh
|
||||
appium {driver|plugin} doctor <extension-name>
|
||||
```
|
||||
|
||||
It shows no result if the driver/plugin author did not implement them.
|
||||
It shows no results if the driver/plugin author did not implement Doctor support.
|
||||
|
||||
More information on this command can be found in the [Command-Line Usage documentation](../cli/extensions.md#doctor).
|
||||
For driver/plugin developers, please read [Building Doctor Checks](../developing/build-doctor-checks.md).
|
||||
!!! note
|
||||
|
||||
### Other Tools
|
||||
```
|
||||
If you maintain an Appium extension and would like to add Appium Doctor support for it, check
|
||||
out the documentation on [Building Doctor Checks](../developing/build-doctor-checks.md).
|
||||
```
|
||||
|
||||
These tools are not maintained by the Appium team and can be used to assist with other problems:
|
||||
## Other Tools
|
||||
|
||||
| Name | Description | Supported By |
|
||||
| ------------------------------------------------------------------------------ | ----------------------------------------------------- | ------------------------- |
|
||||
| [appium-installer](https://github.com/AppiumTestDistribution/appium-installer) | Help set up an Appium environment for Android and iOS | `@AppiumTestDistribution` |
|
||||
These tools are not maintained by the Appium team:
|
||||
|
||||
### [Appium Installer](https://github.com/AppiumTestDistribution/appium-installer)
|
||||
|
||||
Appium Installer is a command-line tool for simplifying setups of new Appium test environments.
|
||||
It includes commands for installing Appium, its drivers and plugins, as well as validating
|
||||
prerequisites for iOS or Android emulators or real devices.
|
||||
|
||||
Supported by: `@AppiumTestDistribution`
|
||||
|
||||
```sh title="Install This Tool"
|
||||
npm install -g appium-installer
|
||||
```
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
---
|
||||
hide:
|
||||
- toc
|
||||
title: Appium Clients
|
||||
---
|
||||
|
||||
@@ -8,37 +6,138 @@ You need a client to write and run Appium scripts. You'll want to become very
|
||||
familiar with your client documentation (as well as the documentation of any Selenium client that
|
||||
the Appium client depends on) since that will be your primary interface to Appium.
|
||||
|
||||
To learn more about clients, read our [Client Intro](../intro/clients.md).
|
||||
|
||||
### Official Clients
|
||||
|
||||
These clients are currently maintained by the Appium team:
|
||||
|
||||
| Client | Language |
|
||||
| --------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- |
|
||||
| [Appium Java client](https://github.com/appium/java-client) | Java |
|
||||
| [Appium Python client](https://github.com/appium/python-client) | Python |
|
||||
| [Appium Ruby Core client](https://github.com/appium/ruby_lib_core) (Recommended)<br>[Appium Ruby client](https://github.com/appium/ruby_lib) | Ruby |
|
||||
| [Appium .NET client](https://github.com/appium/dotnet-client) | C# |
|
||||
|
||||
### Other Clients
|
||||
|
||||
These clients are not maintained by the Appium team and can be used with other languages:
|
||||
|
||||
| Client | Language |
|
||||
| ---------------------------------------------------------------------------------------------------- | ----------------------- |
|
||||
| [WebdriverIO](https://webdriver.io/docs/appium) | Node.js |
|
||||
| [Nightwatch.js](https://nightwatchjs.org/guide/mobile-app-testing/introduction.html) | Node.js |
|
||||
| [RobotFramework](https://github.com/serhatbolsu/robotframework-appiumlibrary) | DSL |
|
||||
| [multicatch's appium-client](https://github.com/multicatch/appium-client) | Rust |
|
||||
| [SwiftAppium](https://github.com/milcgroup/swiftappium) | Swift |
|
||||
|
||||
In general, any W3C WebDriver spec-compatible client will also integrate well with Appium, though
|
||||
some Appium-specific commands may not be implemented in other clients.
|
||||
To learn more about clients, check out the [Client Intro](../intro/clients.md).
|
||||
|
||||
!!! note
|
||||
|
||||
```
|
||||
If you maintain an Appium client that you would like to be listed in the Appium docs, feel free
|
||||
to make a PR to add it to this section with a link to the documentation for the client.
|
||||
If you maintain an Appium client that you would like to be listed here, feel free to create a PR!
|
||||
```
|
||||
|
||||
## Official Clients
|
||||
|
||||
These clients are currently maintained by the Appium team:
|
||||
|
||||
### [Java Client](https://github.com/appium/java-client)
|
||||
|
||||
Language: :fontawesome-brands-java: Java
|
||||
|
||||
\=== "Setup With Maven"
|
||||
|
||||
````
|
||||
```xml
|
||||
<dependency>
|
||||
<groupId>io.appium</groupId>
|
||||
<artifactId>java-client</artifactId>
|
||||
<version>${version.you.require}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
```
|
||||
````
|
||||
|
||||
\=== "Setup With Gradle"
|
||||
|
||||
````
|
||||
```groovy
|
||||
dependencies {
|
||||
testImplementation 'io.appium:java-client:${version.you.require}'
|
||||
}
|
||||
```
|
||||
````
|
||||
|
||||
### [Python Client](https://github.com/appium/python-client)
|
||||
|
||||
Language: :fontawesome-brands-python: Python
|
||||
|
||||
```sh title="Install From PyPi"
|
||||
pip install Appium-Python-Client
|
||||
```
|
||||
|
||||
### [Ruby Core Client](https://github.com/appium/ruby_lib_core)
|
||||
|
||||
Language: :material-language-ruby: Ruby
|
||||
|
||||
```sh title="Install From RubyGems"
|
||||
gem install appium_lib_core
|
||||
```
|
||||
|
||||
### [Ruby Client](https://github.com/appium/ruby_lib)
|
||||
|
||||
Language: :material-language-ruby: Ruby
|
||||
|
||||
This client is a wrapper for the Ruby Core Client with several helper methods, though this may
|
||||
add additional complexity, therefore the Ruby Core Client is recommended instead.
|
||||
|
||||
```sh title="Install From RubyGems"
|
||||
gem install appium_lib
|
||||
```
|
||||
|
||||
### [.NET Client](https://github.com/appium/dotnet-client)
|
||||
|
||||
Language: :simple-dotnet: C#
|
||||
|
||||
```sh title="Install Using .NET CLI"
|
||||
dotnet add package Appium.WebDriver
|
||||
```
|
||||
|
||||
## Other Clients
|
||||
|
||||
These clients are not maintained by the Appium team and can be used with other languages.
|
||||
|
||||
In general, any W3C WebDriver spec-compatible client will also integrate well with Appium, though
|
||||
some Appium-specific commands may not be implemented in other clients.
|
||||
|
||||
### [WebdriverIO](https://webdriver.io/docs/appium)
|
||||
|
||||
Language: :material-language-javascript: :material-language-typescript: JavaScript/TypeScript
|
||||
|
||||
```sh title="Setup Using npm"
|
||||
npm init wdio@latest .
|
||||
```
|
||||
|
||||
### [Nightwatch.js](https://nightwatchjs.org/guide/mobile-app-testing/introduction.html)
|
||||
|
||||
Language: :material-language-javascript: :material-language-typescript: JavaScript/TypeScript
|
||||
|
||||
\=== "Setup For Android"
|
||||
|
||||
````
|
||||
```sh
|
||||
npx @nightwatch/mobile-helper android --appium
|
||||
```
|
||||
````
|
||||
|
||||
\=== "Setup For iOS"
|
||||
|
||||
````
|
||||
```sh
|
||||
npx @nightwatch/mobile-helper ios --appium
|
||||
```
|
||||
````
|
||||
|
||||
### [RobotFramework AppiumLibrary](https://github.com/serhatbolsu/robotframework-appiumlibrary)
|
||||
|
||||
Language: :simple-robotframework: Robot Framework
|
||||
|
||||
```sh title="Install From PyPi"
|
||||
pip install robotframework-appiumlibrary
|
||||
```
|
||||
|
||||
### [multicatch's appium-client](https://github.com/multicatch/appium-client)
|
||||
|
||||
Language: :simple-rust: Rust
|
||||
|
||||
```sh title="Install Using Cargo"
|
||||
cargo add appium-client
|
||||
```
|
||||
|
||||
### [SwiftAppium](https://github.com/milcgroup/swiftappium)
|
||||
|
||||
Language: :material-language-swift: Swift
|
||||
|
||||
```sh title="Install and Setup"
|
||||
git clone https://github.com/milcgroup/SwiftAppium.git
|
||||
cd SwiftAppium
|
||||
swift build
|
||||
swift run swiftappium
|
||||
```
|
||||
|
||||
@@ -1,55 +1,219 @@
|
||||
---
|
||||
hide:
|
||||
- toc
|
||||
|
||||
title: Appium Drivers
|
||||
---
|
||||
|
||||
You can't use Appium without at least one driver! Click on the link for each driver to see the
|
||||
specific installation instructions and documentation for that driver.
|
||||
|
||||
Generally, drivers can be installed using their listed installation key, with the following command:
|
||||
|
||||
```
|
||||
appium driver install <installation key>
|
||||
```
|
||||
You can't use Appium without a driver! Here you can find a list of all known Appium drivers,
|
||||
along with their installation commands and links to their documentation.
|
||||
|
||||
To learn more about drivers, check out the [Driver Intro](../intro/drivers.md).
|
||||
|
||||
### Official Drivers
|
||||
|
||||
These drivers are currently maintained by the Appium team:
|
||||
|
||||
| Driver | Installation Key | Platform(s) | Mode(s) | Important Notes |
|
||||
| -------------------------------------------------------------------- | ---------------- | ------------------------------ | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| [Chromium](https://github.com/appium/appium-chromium-driver) | `chromium` | macOS, Windows, Linux | Web | |
|
||||
| [Espresso](https://github.com/appium/appium-espresso-driver) | `espresso` | Android | Native | |
|
||||
| [Gecko](https://github.com/appium/appium-geckodriver) | `gecko` | macOS, Windows, Linux, Android | Web | |
|
||||
| [Mac2](https://github.com/appium/appium-mac2-driver) | `mac2` | macOS | Native | |
|
||||
| [Safari](https://github.com/appium/appium-safari-driver) | `safari` | macOS, iOS | Web | |
|
||||
| [UiAutomator2](https://github.com/appium/appium-uiautomator2-driver) | `uiautomator2` | Android | Native, Hybrid, Web | |
|
||||
| [XCUITest](https://github.com/appium/appium-xcuitest-driver) | `xcuitest` | iOS | Native, Hybrid, Web | |
|
||||
| [Windows](https://github.com/appium/appium-windows-driver) | `windows` | Windows | Native | Only the Node.js-based driver part is maintained by the Appium team. The server part (WinAppDriver executable) has not been maintained by Microsoft since 2022 |
|
||||
|
||||
### Other Drivers
|
||||
|
||||
These drivers are not maintained by the Appium team and can be used to target additional platforms:
|
||||
|
||||
| Driver | Installation Key | Platform(s) | Mode(s) | Supported By | Important Notes |
|
||||
| -------------------------------------------------------------------------------------------------- | ------------------------------------------------ | -------------------------------- | -------------------------- | ------------------------------------- | ------------------------- |
|
||||
| [Flutter](https://github.com/appium/appium-flutter-driver) | `--source=npm appium-flutter-driver` | iOS, Android | Native | Appium Team/Community | |
|
||||
| [Flutter Integration](https://github.com/AppiumTestDistribution/appium-flutter-integration-driver) | `--source=npm appium-flutter-integration-driver` | iOS, Android | Native | Community / `@AppiumTestDistribution` | |
|
||||
| [LG WebOS](https://github.com/headspinio/appium-lg-webos-driver) | `--source=npm appium-lg-webos-driver` | LG TV | Web | HeadSpin | |
|
||||
| [Linux](https://github.com/fantonglang/appium-linux-driver) | `--source=npm @stdspa/appium-linux-driver` | Linux | Native | `@fantonglang` | Not maintained since 2022 |
|
||||
| [NovaWindows](https://github.com/AutomateThePlanet/appium-novawindows-driver) | `--source=npm appium-novawindows-driver` | Windows | Native | Community / Automate The Planet | |
|
||||
| [Roku](https://github.com/headspinio/appium-roku-driver) | `--source=npm @headspinio/appium-roku-driver` | Roku | Native | HeadSpin | |
|
||||
| [Tizen](https://github.com/Samsung/appium-tizen-driver) | `--source=npm appium-tizen-driver` | Android | Native | Community / Samsung | Not maintained since 2020 |
|
||||
| [TizenTV](https://github.com/headspinio/appium-tizen-tv-driver) | `--source=npm appium-tizen-tv-driver` | Samsung TV | Web | HeadSpin | |
|
||||
| [Youi](https://github.com/YOU-i-Labs/appium-youiengine-driver) | `--source=npm appium-youiengine-driver` | iOS, Android, macOS, Linux, tvOS | Native | Community / You.i | Not maintained since 2022 |
|
||||
|
||||
!!! note
|
||||
|
||||
```
|
||||
If you maintain an Appium driver that you would like to be listed in the Appium docs, feel free
|
||||
to make a PR to add it to this section with a link to the driver documentation.
|
||||
If you maintain an Appium driver that you would like to be listed here, feel free to create a PR!
|
||||
```
|
||||
|
||||
## Official Drivers
|
||||
|
||||
These drivers are currently maintained by the Appium team:
|
||||
|
||||
### [Chromium](https://github.com/appium/appium-chromium-driver)
|
||||
|
||||
- Target: Desktop and mobile Chromium browsers (Chrome, Microsoft Edge, etc.)
|
||||
- Mode: Web
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install chromium
|
||||
```
|
||||
|
||||
### [Espresso](https://github.com/appium/appium-espresso-driver)
|
||||
|
||||
- Target: Android applications
|
||||
- Mode: Native
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install espresso
|
||||
```
|
||||
|
||||
### [Gecko](https://github.com/appium/appium-geckodriver)
|
||||
|
||||
- Target: Desktop and mobile Gecko browsers (Firefox)
|
||||
- Mode: Web
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install gecko
|
||||
```
|
||||
|
||||
### [Mac2](https://github.com/appium/appium-mac2-driver)
|
||||
|
||||
- Target: macOS applications
|
||||
- Mode: Native
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install mac2
|
||||
```
|
||||
|
||||
### [Safari](https://github.com/appium/appium-safari-driver)
|
||||
|
||||
- Target: Desktop and mobile Safari browsers
|
||||
- Mode: Web
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install safari
|
||||
```
|
||||
|
||||
### [UiAutomator2](https://github.com/appium/appium-uiautomator2-driver)
|
||||
|
||||
- Target: Android, Android TV, Android Wear applications
|
||||
- Modes: Native, Hybrid, Web
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install uiautomator2
|
||||
```
|
||||
|
||||
### [Windows](https://github.com/appium/appium-windows-driver)
|
||||
|
||||
!!! warning
|
||||
|
||||
```
|
||||
Only the Node.js-based driver part is maintained by the Appium team. The server part
|
||||
(WinAppDriver executable) is provided by Microsoft, but has not been maintained since 2022.
|
||||
```
|
||||
|
||||
- Target: Windows applications
|
||||
- Mode: Native
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install windows
|
||||
```
|
||||
|
||||
### [XCUITest](https://appium.github.io/appium-xcuitest-driver/)
|
||||
|
||||
- Target: iOS, iPadOS, tvOS applications
|
||||
- Modes: Native, Hybrid, Web
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install xcuitest
|
||||
```
|
||||
|
||||
## Other Drivers
|
||||
|
||||
These drivers are not maintained by the Appium team and can be used to target other platforms:
|
||||
|
||||
### [Flutter](https://github.com/appium/appium-flutter-driver)
|
||||
|
||||
- Target: iOS and Android applications built with Flutter
|
||||
- Mode: Native
|
||||
- Supported by: Appium Team / Community
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install --source=npm appium-flutter-driver
|
||||
```
|
||||
|
||||
### [Flutter Integration](https://github.com/AppiumTestDistribution/appium-flutter-integration-driver)
|
||||
|
||||
- Target: iOS and Android applications built with Flutter
|
||||
- Mode: Native
|
||||
- Supported by: Community / `@AppiumTestDistribution`
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install --source=npm appium-flutter-integration-driver
|
||||
```
|
||||
|
||||
### [LG WebOS](https://github.com/headspinio/appium-lg-webos-driver)
|
||||
|
||||
- Target: LG TV web applications
|
||||
- Mode: Web
|
||||
- Supported by: HeadSpin
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install --source=npm appium-lg-webos-driver
|
||||
```
|
||||
|
||||
### [Linux](https://github.com/fantonglang/appium-linux-driver)
|
||||
|
||||
!!! warning
|
||||
|
||||
```
|
||||
This driver has not been maintained since 2022 and requires a custom Appium installation
|
||||
```
|
||||
|
||||
- Target: Linux applications
|
||||
- Mode: Native
|
||||
- Supported by: `@fantonglang`
|
||||
|
||||
```sh title="Install This Driver"
|
||||
git clone https://github.com/fantonglang/appium
|
||||
cd appium
|
||||
yarn install
|
||||
node ./
|
||||
```
|
||||
|
||||
### [NovaWindows](https://github.com/AutomateThePlanet/appium-novawindows-driver)
|
||||
|
||||
!!! info
|
||||
|
||||
```
|
||||
This driver is recommended as a drop-in replacement for the partially unmaintained
|
||||
[Windows driver](#windows)
|
||||
```
|
||||
|
||||
- Target: Windows applications
|
||||
- Mode: Native
|
||||
- Supported by: Community / Automate The Planet
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install --source=npm appium-novawindows-driver
|
||||
```
|
||||
|
||||
### [Roku](https://github.com/headspinio/appium-roku-driver)
|
||||
|
||||
- Target: Roku channels (applications)
|
||||
- Mode: Native
|
||||
- Supported by: HeadSpin
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install --source=npm @headspinio/appium-roku-driver
|
||||
```
|
||||
|
||||
### [Tizen](https://github.com/Samsung/appium-tizen-driver)
|
||||
|
||||
!!! warning
|
||||
|
||||
```
|
||||
This driver has not been maintained since 2020 and is only compatible with Appium 1
|
||||
```
|
||||
|
||||
- Target: Tizen applications
|
||||
- Mode: Native
|
||||
- Supported by: Community / Samsung
|
||||
|
||||
```sh title="Install This Driver"
|
||||
npm install appium-tizen-driver
|
||||
```
|
||||
|
||||
### [TizenTV](https://github.com/headspinio/appium-tizen-tv-driver)
|
||||
|
||||
- Target: Tizen TV web applications
|
||||
- Mode: Web
|
||||
- Supported by: HeadSpin
|
||||
|
||||
```sh title="Install This Driver"
|
||||
appium driver install --source=npm appium-tizen-tv-driver
|
||||
```
|
||||
|
||||
### [You.i Engine](https://github.com/YOU-i-Labs/appium-youiengine-driver)
|
||||
|
||||
!!! warning
|
||||
|
||||
```
|
||||
This driver has not been maintained since 2022 and is only compatible with Appium 1
|
||||
```
|
||||
|
||||
- Target: iOS, Android, macOS, Linux, tvOS applications built with You.i Engine
|
||||
- Mode: Native
|
||||
- Supported by: Community / You.i
|
||||
|
||||
```sh title="Install This Driver"
|
||||
npm install appium-youiengine-driver
|
||||
```
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
---
|
||||
hide:
|
||||
- toc
|
||||
title: Appium Plugins
|
||||
---
|
||||
|
||||
@@ -8,42 +6,135 @@ Plugins offer various ways to extend or modify Appium's behaviour. They are _com
|
||||
and are not needed for standard automation functionality, but you may find them to be useful
|
||||
for more specialised automation workflows.
|
||||
|
||||
Generally, plugins can be installed using their listed installation key, with the following command:
|
||||
|
||||
```
|
||||
appium plugin install <installation key>
|
||||
```
|
||||
|
||||
### Official Plugins
|
||||
|
||||
These plugins are are currently maintained by the Appium team:
|
||||
|
||||
| <div style="width:7em">Plugin</div> | <div style="width:8em">Installation Key</div> | Description |
|
||||
| --------------------------------------------------------------------------------------------- | --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| [Execute Driver](https://github.com/appium/appium/tree/master/packages/execute-driver-plugin) | `execute-driver` | Run entire batches of commands in a single call to the Appium server |
|
||||
| [Images](https://github.com/appium/appium/tree/master/packages/images-plugin) | `images` | Image matching and comparison features |
|
||||
| [Inspector](https://github.com/appium/appium-inspector/tree/main/plugins) | `inspector` | Integrate the [Appium Inspector](https://github.com/appium/appium-inspector) directly into your Appium server installation, providing a web-based interface for inspecting and interacting with your application under test. |
|
||||
| [Relaxed Caps](https://github.com/appium/appium/tree/master/packages/relaxed-caps-plugin) | `relaxed-caps` | Relax Appium's requirement for vendor prefixes on capabilities |
|
||||
| [Storage](https://github.com/appium/appium/tree/master/packages/storage-plugin) | `storage` | Server-side storage with client-side management |
|
||||
| [Universal XML](https://github.com/appium/appium/tree/master/packages/universal-xml-plugin) | `universal-xml` | Instead of the standard XML format for iOS and Android, use an XML definition that is the same across both platforms |
|
||||
|
||||
### Other Plugins
|
||||
|
||||
These plugins are not maintained by the Appium team and can provide additional functionality:
|
||||
|
||||
| <div style="width:6em">Plugin</div> | <div style="width:19em">Installation Key</div> | Description | <div style="width:13em">Supported By</div> |
|
||||
| ---------------------------------------------------------------------------------- | ---------------------------------------------- | ----------------------------------------------------------------------------------------------- | ------------------------------------------ |
|
||||
| [AltUnity](https://github.com/headspinio/appium-altunity-plugin) | `--source=npm appium-altunity-plugin` | Target Unity games and apps for automation with a new context, via the AltUnityTester framework | HeadSpin |
|
||||
| [Device Farm](https://github.com/AppiumTestDistribution/appium-device-farm) | `--source=npm appium-device-farm` | Manage and create driver sessions on connected Android devices and iOS simulators | `@AppiumTestDistribution` |
|
||||
| [Gestures](https://github.com/AppiumTestDistribution/appium-gestures-plugin) | `--source=npm appium-gestures-plugin` | Perform basic gestures using W3C Actions | `@AppiumTestDistribution` |
|
||||
| [Interceptor](https://github.com/AppiumTestDistribution/appium-interceptor-plugin) | `--source=npm appium-interceptor` | Intercept and mock API requests and responses | `@AppiumTestDistribution` |
|
||||
| [OCR](https://github.com/jlipps/appium-ocr-plugin) | `--source=npm appium-ocr-plugin` | Find elements via OCR text | `@jlipps` |
|
||||
| [Reporter](https://github.com/AppiumTestDistribution/appium-reporter-plugin) | `--source=npm appium-reporter-plugin` | Generate standalone consolidated HTML reports with screenshots | `@AppiumTestDistribution` |
|
||||
| [Wait](https://github.com/AppiumTestDistribution/appium-wait-plugin) | `--source=npm appium-wait-plugin` | Manage global element wait timeouts | `@AppiumTestDistribution` |
|
||||
|
||||
!!! note
|
||||
|
||||
```
|
||||
If you maintain an Appium plugin that you would like to be listed in the Appium docs, feel free
|
||||
to make a PR to add it to this section with a link to the documentation for the plugin.
|
||||
If you maintain an Appium plugin that you would like to be listed here, feel free to create a PR!
|
||||
```
|
||||
|
||||
## Official Plugins
|
||||
|
||||
These plugins are are currently maintained by the Appium team:
|
||||
|
||||
### [Execute Driver](https://github.com/appium/appium/tree/master/packages/execute-driver-plugin)
|
||||
|
||||
Run entire batches of commands in a single call to the Appium server
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install execute-driver
|
||||
```
|
||||
|
||||
### [Images](https://github.com/appium/appium/tree/master/packages/images-plugin)
|
||||
|
||||
Add support for image matching and comparison features
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install images
|
||||
```
|
||||
|
||||
### [Inspector](https://github.com/appium/appium-inspector/tree/main/plugins)
|
||||
|
||||
Integrate the [Appium Inspector](https://appium.github.io/appium-inspector/) directly into your
|
||||
Appium server installation
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install inspector
|
||||
```
|
||||
|
||||
### [Relaxed Caps](https://github.com/appium/appium/tree/master/packages/relaxed-caps-plugin)
|
||||
|
||||
Relax Appium's requirement for vendor prefixes on capabilities
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install relaxed-caps
|
||||
```
|
||||
|
||||
### [Storage](https://github.com/appium/appium/tree/master/packages/storage-plugin)
|
||||
|
||||
Add server-side storage with client-side management
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install storage
|
||||
```
|
||||
|
||||
### [Universal XML](https://github.com/appium/appium/tree/master/packages/universal-xml-plugin)
|
||||
|
||||
Translate the default iOS and Android XML formats into a common format
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install universal-xml
|
||||
```
|
||||
|
||||
## Other Plugins
|
||||
|
||||
These plugins are not maintained by the Appium team and can provide additional functionality:
|
||||
|
||||
### [AltUnity](https://github.com/headspinio/appium-altunity-plugin)
|
||||
|
||||
Target Unity games and apps for automation via the AltUnityTester framework
|
||||
|
||||
Supported by: HeadSpin
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install --source=npm appium-altunity-plugin
|
||||
```
|
||||
|
||||
### [Device Farm](https://github.com/AppiumTestDistribution/appium-device-farm)
|
||||
|
||||
Manage and create driver sessions on connected Android devices and iOS simulators
|
||||
|
||||
Supported by: `@AppiumTestDistribution`
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install --source=npm appium-device-farm
|
||||
```
|
||||
|
||||
### [Gestures](https://github.com/AppiumTestDistribution/appium-gestures-plugin)
|
||||
|
||||
Perform basic gestures using W3C Actions
|
||||
|
||||
Supported by: `@AppiumTestDistribution`
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install --source=npm appium-gestures-plugin
|
||||
```
|
||||
|
||||
### [Interceptor](https://github.com/AppiumTestDistribution/appium-interceptor-plugin)
|
||||
|
||||
Intercept and mock API requests and responses
|
||||
|
||||
Supported by: `@AppiumTestDistribution`
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install --source=npm appium-interceptor
|
||||
```
|
||||
|
||||
### [OCR](https://github.com/jlipps/appium-ocr-plugin)
|
||||
|
||||
Find elements via OCR text
|
||||
|
||||
Supported by: `@jlipps`
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install --source=npm appium-ocr-plugin
|
||||
```
|
||||
|
||||
### [Reporter](https://github.com/AppiumTestDistribution/appium-reporter-plugin)
|
||||
|
||||
Generate standalone consolidated HTML reports with screenshots
|
||||
|
||||
Supported by: `@AppiumTestDistribution`
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install --source=npm appium-reporter-plugin
|
||||
```
|
||||
|
||||
### [Wait](https://github.com/AppiumTestDistribution/appium-wait-plugin)
|
||||
|
||||
Manage global element wait timeouts
|
||||
|
||||
Supported by: `@AppiumTestDistribution`
|
||||
|
||||
```sh title="Install This Plugin"
|
||||
appium plugin install --source=npm appium-wait-plugin
|
||||
```
|
||||
|
||||
@@ -1,41 +1,61 @@
|
||||
---
|
||||
hide:
|
||||
- toc
|
||||
title: Appium-Related Tools
|
||||
---
|
||||
|
||||
There are several Appium tools that have been created to to assist with things not directly related
|
||||
to testing, such as Appium installation, test development, and more.
|
||||
The Appium ecosystem also includes several tools that have been created to assist with things not
|
||||
directly related to running tests, such as Appium installation, test development, and more.
|
||||
|
||||
### [Appium Inspector](https://appium.github.io/appium-inspector/latest/)
|
||||
!!! note
|
||||
|
||||
```
|
||||
If you maintain an Appium tool that you would like to be listed here, feel free to create a PR!
|
||||
```
|
||||
|
||||
## Official Tools
|
||||
|
||||
These tools are currently maintained by the Appium team:
|
||||
|
||||
### [Appium Inspector](https://appium.github.io/appium-inspector/)
|
||||
|
||||
Appium has a graphical client which can be used to inspect application screenshots, view the
|
||||
application hierarchy, run Appium commands, record app interactions, and more. It is very useful
|
||||
for Appium test development.
|
||||
application hierarchy, search for elements, run Appium commands, record app interactions, and more.
|
||||
It can be very useful for Appium test development.
|
||||
|
||||
Find downloads and more information on its GitHub page: [Appium Inspector](https://github.com/appium/appium-inspector)
|
||||
## Extension Tools
|
||||
|
||||
Appium driver or plugin developers can choose to include these tools in their driver/plugin:
|
||||
|
||||
### Appium Doctor
|
||||
|
||||
Appium Doctor is a command-line tool built into Appium drivers and plugins.
|
||||
The command is expected to be used to validate whether a driver or plugin has all of its prerequisites and other environment details set up correctly
|
||||
if the driver/plugin author implemented the `doctor` command.
|
||||
The Appium Doctor tool can be used to validate whether all prerequisites and other environment
|
||||
details needed for the driver/plugin have been set up correctly. The tool can be accessed via the
|
||||
[`doctor` command in the Appium CLI](../cli/extensions.md#doctor):
|
||||
|
||||
For example, `uiautomator2` driver provides the `doctor` command below.
|
||||
|
||||
```
|
||||
appium driver doctor uiautomator2
|
||||
```sh
|
||||
appium {driver|plugin} doctor <extension-name>
|
||||
```
|
||||
|
||||
It shows no result if the driver/plugin author did not implement them.
|
||||
It shows no results if the driver/plugin author did not implement Doctor support.
|
||||
|
||||
More information on this command can be found in the [Command-Line Usage documentation](../cli/extensions.md#doctor).
|
||||
For driver/plugin developers, please read [Building Doctor Checks](../developing/build-doctor-checks.md).
|
||||
!!! note
|
||||
|
||||
### Other Tools
|
||||
```
|
||||
If you maintain an Appium extension and would like to add Appium Doctor support for it, check
|
||||
out the documentation on [Building Doctor Checks](../developing/build-doctor-checks.md).
|
||||
```
|
||||
|
||||
These tools are not maintained by the Appium team and can be used to assist with other problems:
|
||||
## Other Tools
|
||||
|
||||
| Name | Description | Supported By |
|
||||
| ------------------------------------------------------------------------------ | ----------------------------------------------------- | ------------------------- |
|
||||
| [appium-installer](https://github.com/AppiumTestDistribution/appium-installer) | Help set up an Appium environment for Android and iOS | `@AppiumTestDistribution` |
|
||||
These tools are not maintained by the Appium team:
|
||||
|
||||
### [Appium Installer](https://github.com/AppiumTestDistribution/appium-installer)
|
||||
|
||||
Appium Installer is a command-line tool for simplifying setups of new Appium test environments.
|
||||
It includes commands for installing Appium, its drivers and plugins, as well as validating
|
||||
prerequisites for iOS or Android emulators or real devices.
|
||||
|
||||
Supported by: `@AppiumTestDistribution`
|
||||
|
||||
```sh title="Install This Tool"
|
||||
npm install -g appium-installer
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user