Automatización de pruebas multiplataforma para aplicaciones nativas, híbridas, móviles web y de escritorio.
Documentación | Empiece | Ecosistema | ChangeLog | Guía contribuyente | Foro de discusión
Appium es un marco de automatización de código abierto que proporciona posibilidades de automatización basadas en WebDriver para una amplia gama de diferentes plataformas móviles, de escritorio y IoT. Appium es modular y extensible, y admite múltiples lenguajes de programación, lo que significa que hay un ecosistema completo de software relacionado:
A partir del 1 de enero de 2022, el equipo de Appium ya no mantiene ni admite Appium 1. Todos los controladores de plataforma oficialmente compatibles son compatibles con Appium 2.
Lea la guía de migración si todavía está usando Appium 1.
Advertencia
Si usa Appium Desktop o Appium Server GUI, no podrá actualizar a Appium 2, ya que ambas herramientas se han desactivado. Utilice el inspector de Appium en combinación con un servidor independiente Appium 2.
Appium se puede instalar utilizando npm (otros administradores de paquetes no son compatibles actualmente). Consulte los documentos de instalación de los requisitos del sistema y más información.
Si se actualiza desde Appium 1, asegúrese de que Appium 1 esté completamente desinstalado ( npm uninstall -g appium ). Los errores inesperados pueden aparecer si esto no se ha hecho.
npm i -g appiumTenga en cuenta que esto solo instalará el servidor Core Appium, que no puede automatizar nada por sí solo. Instale los controladores para sus plataformas de destino para automatizarlos.
Appium admite la automatización de aplicaciones en una variedad de plataformas, como iOS, Android, macOS, Windows y más. Cada plataforma es compatible con uno o más "controladores", que saben cómo automatizar esa plataforma en particular. Puede encontrar una lista completa de controladores de terceros y respaldados oficialmente en la página de controladores del ecosistema de Appium.
La gestión del controlador se realiza utilizando la interfaz de línea de comandos de extensión de 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 > Las bibliotecas de clientes habilitan la redacción de pruebas de Appium en diferentes lenguajes de programación. Hay clientes oficialmente respaldados para Java, Python, Ruby y .NET C#, así como clientes de terceros para otros idiomas. Puede encontrar una lista completa de clientes en la página de clientes de Appium Ecosystem.
Los complementos le permiten extender la funcionalidad del servidor sin cambiar el código del servidor. La principal diferencia entre controladores y complementos es que este último debe estar habilitado explícitamente en el inicio del servidor Appium (todos los controladores instalados están habilitados de forma predeterminada):
appium --use-plugins= < plugin-name >Puede encontrar una lista completa de complementos de terceros y complementos de terceros en la página de complementos de Appium Ecosystem.
De manera similar a los controladores, la administración de complementos también se realiza utilizando la interfaz de línea de comandos de extensión de Appium:
# 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 > Para comenzar a enviar comandos al servidor Appium, debe estar ejecutándose en la URL y el puerto donde su biblioteca de cliente espera que escuche. La interfaz de línea de comandos de Appium se utiliza para iniciar y configurar el servidor:
# 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 admite la ejecución de los procesos del servidor paralelo, así como las sesiones de controlador paralelo dentro de un solo proceso de servidor. Consulte las documentos del controlador correspondientes con respecto a qué modo es óptimo para el controlador en particular o si admite sesiones paralelas.
xcuitest y uiautomator2 tienen soporte de aplicaciones móviles e web incorporadas. Dentro del mismo script, puede cambiar sin problemas entre la automatización de aplicaciones nativas y la automatización de WebView, todo utilizando el modelo WebDriver que ya es el estándar para la automatización web.Invertir en el protocolo WebDriver significa que está apostando por un protocolo único, libre y abierto para las pruebas que se han convertido en un estándar web. No te encierren en una pila patentada.
Por ejemplo, si usa la biblioteca XCuitest de Apple sin Appium, solo puede escribir pruebas usando obj-c/swift, y solo puede ejecutar pruebas a través de Xcode. Del mismo modo, con el uiautomator o el espresso de Google, solo puede escribir pruebas en Java/Kotlin. Appium abre la posibilidad de una verdadera automatización de aplicaciones nativas de plataforma multiplataforma, para dispositivos móviles y más allá.
Si está buscando una descripción más completa de de qué se trata, lea nuestra documentación sobre cómo funciona Appium.
¡Appium tiene un programa de patrocinio! Si usted o su empresa usan Appium y desea devolver financieramente al proyecto, utilizamos estos fondos para fomentar el desarrollo y las contribuciones, así como apoyar otros proyectos de código abierto en los que confiamos. Conviértete en patrocinador a través de nuestra página OpenColectiva.
¡Appium está increíblemente agradecido con nuestro desarrollo y socios estratégicos por su contribución sostenida del desarrollo y el liderazgo de proyectos!


Una lista completa de patrocinadores está disponible en nuestra página de patrocinadores.
Apache-2.0
@appium/logger está bajo la licencia ISC.