Кроссплатформенная автоматизация тестирования для нативных, гибридных, мобильных веб-и настольных приложений.
Документация | Начните | Экосистема | Изменение | Способный гид | Дискуссионный форум
Appium-это структура автоматизации с открытым исходным кодом, которая предоставляет возможности автоматизации на основе WebDriver для широкого спектра различных мобильных платформ, настольных и IoT. Appium модульный и расширяемый, и поддерживает несколько языков программирования, что означает, что существует целая экосистема связанного программного обеспечения:
По состоянию на 1 января 2022 года команда Appium больше не поддерживает и не поддерживает Appium 1. Все официально поддерживаемые драйверы платформы совместимы только с Appium 2.
Пожалуйста, прочитайте руководство по миграции, если вы все еще используете Appium 1.
Предупреждение
Если вы используете Appium Desktop или Gui Appium Server, вы не сможете обновить на Appium 2, поскольку оба этих инструмента были устарели. Пожалуйста, используйте Appium Inspector в сочетании с автономным сервером Appium 2.
Appium может быть установлен с использованием npm (другие менеджеры пакетов в настоящее время не поддерживаются). Пожалуйста, проверьте документы по установке для системных требований и дополнительной информации.
При обновлении с Appium 1 убедитесь, что Appium 1 полностью удален ( npm uninstall -g appium ). Неожиданные ошибки могут появиться, если это не было сделано.
npm i -g appiumОбратите внимание, что это только установит сервер Appium, который не может самостоятельно автоматизировать что -либо. Пожалуйста, установите драйверы для ваших целевых платформ, чтобы их автоматизировать.
Appium поддерживает автоматизацию приложений на различных платформах, таких как iOS, Android, MacOS, Windows и многое другое. Каждая платформа поддерживается одним или несколькими «драйверами», которые знают, как автоматизировать эту конкретную платформу. Вы можете найти полный список официально поддерживаемых и сторонних драйверов на странице драйверов Appium Ecosystem.
Управление драйвером выполняется с помощью интерфейса командной строки Appium расширения:
# Install an official driver from npm (see documentation for a list of such drivers)
appium driver install < driver-name >
# Install any driver from npm
appium driver install --source=npm < driver-name >
# See documentation for installation from other sources
# List already installed drivers
appium driver list --installed
# Update a driver (it must be already installed)
# This will NOT update the major version, in order to prevent breaking changes
appium driver update < driver-name >
# Update a driver to the most recent version (may include breaking changes)
appium driver update < driver-name > --unsafe
# Uninstall a driver (it won't last forever, will it?)
appium driver uninstall < driver-name > Клиентские библиотеки позволяют записать тесты на Аппий на разных языках программирования. Есть официально поддерживаемые клиенты для Java, Python, Ruby и .net C#, а также сторонних клиентов для других языков. Вы можете найти полный список клиентов на странице клиентов Appium Ecosystem.
Плагины позволяют расширять функциональность сервера без изменения кода сервера. Основное различие между драйверами и плагинами заключается в том, что последнее должно быть явно включено при запуске сервера Appium (все установленные драйверы включены по умолчанию):
appium --use-plugins= < plugin-name >Вы можете найти полный список официально поддерживаемых и сторонних плагинов на странице плагинов Appium Ecosystem.
Подобно драйверам, управление плагинами также выполняется с использованием интерфейса командной строки Appium Extension:
# Install an official plugin from npm (see documentation for a list of such plugins)
appium plugin install < plugin-name >
# Install any plugin from npm
appium plugin install --source=npm < plugin-name >
# See documentation for installation from other sources
# List already installed plugins
appium plugin list --installed
# Update a plugin (it must be already installed)
# This will NOT update the major version, in order to prevent breaking changes
appium plugin update < plugin-name >
# Update a plugin to the most recent version (may include breaking changes)
appium plugin update < plugin-name > --unsafe
# Uninstall a plugin
appium plugin uninstall < plugin-name > Чтобы начать отправку команд на сервер Appium, он должен работать на URL и порт, где ваша клиентская библиотека ожидает, что он будет прослушиваться. Интерфейс командной строки Appium используется для запуска и настройки сервера:
# Start the server on the default host (0.0.0.0) and port (4723)
appium server
# You can also omit the 'server' subcommand
appium
# Start the server on the given host, port and use a custom base path prefix (the default prefix is '/')
appium --address 127.0.0.1 --port 9000 --base-path /wd/hubAppium поддерживает выполнение процессов параллельных серверов, а также параллельные сеансы драйверов в одном серверном процессе. Обратитесь к соответствующей документации драйвера относительно того, какой режим является оптимальным для конкретного драйвера или поддерживает параллельные сеансы.
xcuitest и uiautomator2 , имеют встроенную поддержку мобильных веб-и гибридных приложений. В одном и том же сценарии вы можете беспрепятственно переключаться между автоматизацией нативного приложения и автоматизацией WebView, и все это использует модель WebDriver, которая уже является стандартом для веб -автоматизации.Инвестирование в протокол Webdriver означает, что вы делаете ставку на один, бесплатный и открытый протокол для тестирования, который стал веб -стандартом. Не блокируйте себя в запатентованную стек.
Например, если вы используете библиотеку xcuitest Apple без Appium, вы можете записать тесты только с помощью OBJ-C/Swift, и вы можете запускать тесты только через XCode. Точно так же, с UIAutomator Google или Espresso, вы можете написать только тесты в Java/Kotlin. Appium открывает возможность автоматизации истинного кроссплатформенного нативного приложения, для мобильных и за его пределами!
Если вы ищете более полное описание того, что это такое, пожалуйста, прочитайте нашу документацию о том, как работает Appium?
Appium имеет спонсорскую программу! Если вы или ваша компания используют Appium и хотите отдать финансовую поддержку проекту, мы используем эти средства для поощрения разработки и взносов, а также поддерживать другие проекты с открытым исходным кодом, на которые мы полагаемся. Станьте спонсором через нашу Opencollective Page.
Appium невероятно благодарен нашим разработчикам и стратегическим партнерам за их устойчивый вклад в разработку проекта и лидерство!


Полный список спонсоров доступен на нашей странице спонсоров.
Apache-2.0
@appium/logger Package находится под лицензией ISC.