Automação de teste de plataforma cruzada para aplicativos nativos, híbridos, web móvel e de desktop.
Documentação | Comece | Ecossistema | Changelog | Guia contribuinte | Fórum de Discussão
O Appium é uma estrutura de automação de código aberto que fornece possibilidades de automação baseadas em Webdriver para uma ampla gama de plataformas diferentes móveis, de mesa e IoT. O Appium é modular e extensível e suporta várias linguagens de programação, o que significa que há um ecossistema inteiro de software relacionado:
Em 1º de janeiro de 2022, a equipe do Appium não mantém mais ou suporta o Appium 1. Todos os drivers de plataforma oficialmente suportados são compatíveis apenas com o Appium 2.
Leia o guia de migração se você ainda estiver usando o Appium 1.
Aviso
Se você usar o Appium Desktop ou o Appium Server GUI, não poderá atualizar para o Appium 2, pois essas duas ferramentas foram obtidas. Use o Appium Inspetor em combinação com um servidor independente Appium 2.
O Appium pode ser instalado usando npm (outros gerentes de pacotes não são suportados no momento). Verifique os documentos de instalação para obter os requisitos do sistema e mais informações.
Se a atualização do Appium 1, verifique se o Appium 1 está totalmente desinstalado ( npm uninstall -g appium ). Erros inesperados podem aparecer se isso não tiver sido feito.
npm i -g appiumObserve que isso instalará apenas o Core Appium Server, que não pode automatizar nada por si só. Instale os drivers para suas plataformas de destino para automatizá -las.
O Appium suporta a automação de aplicativos em uma variedade de plataformas, como iOS, Android, MacOS, Windows e muito mais. Cada plataforma é suportada por um ou mais "drivers", que sabem como automatizar essa plataforma específica. Você pode encontrar uma lista completa de drivers oficialmente apoiados e de terceiros na página Drivers do Appium Ecossystem.
O gerenciamento do driver é feito usando a interface da linha de comando de extensão da 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 > As bibliotecas de clientes permitem a gravação de testes de Appium em diferentes linguagens de programação. Existem clientes oficialmente apoiados para Java, Python, Ruby e .Net C#, além de clientes de terceiros para outros idiomas. Você pode encontrar uma lista completa de clientes na página de clientes do Appium EcoSystem.
Os plugins permitem estender a funcionalidade do servidor sem alterar o código do servidor. A principal diferença entre drivers e plugins é que o último deve ser explicitamente ativado na inicialização do Appium Server (todos os drivers instalados são ativados por padrão):
appium --use-plugins= < plugin-name >Você pode encontrar uma lista completa de plugins de suporte oficial e de terceiros na página de plugins do Appium Ecossystem.
Da mesma forma que os drivers, o gerenciamento de plug-in também é feito usando a interface da linha de comando de extensão da 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 começar a enviar comandos para o servidor Appium, ele deve estar em execução no URL e na porta onde sua biblioteca de clientes espera que ele ouça. A interface da linha de comando do Appium é usada para iniciar e configurar o 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/hubO Appium suporta a execução de processos de servidor paralelo, bem como sessões de driver paralelas em um único processo de servidor. Consulte as documentações do driver correspondentes sobre qual modo é o ideal para o driver específico ou se ele suporta sessões paralelas.
xcuitest e uiautomator2 têm suporte de aplicativo móvel e híbrido móvel embutido. No mesmo script, você pode alternar perfeitamente entre a automação de aplicativos nativos e a automação da WebView, todos usando o modelo WebDriver que já é o padrão para automação da Web.Investir no protocolo Webdriver significa que você está apostando em um protocolo único, gratuito e aberto para testes que se tornaram um padrão da Web. Não se prenda em uma pilha proprietária.
Por exemplo, se você usar a Biblioteca Xcuitest da Apple sem Appium, só poderá gravar testes usando OBJ-C/SWIFT e só poderá executar testes através do Xcode. Da mesma forma, com o Uiautomator ou Espresso do Google, você só pode escrever testes em Java/Kotlin. Appium abre a possibilidade de verdadeira automação de aplicativos nativos de plataforma cruzada, para celular e além!
Se você está procurando uma descrição mais abrangente do que se trata, leia nossa documentação sobre como o Appium funciona?.
Appium tem um programa de patrocínio! Se você ou sua empresa usar o Appium e desejar devolver financeiramente o projeto, usamos esses fundos para incentivar o desenvolvimento e as contribuições, além de apoiar outros projetos de código aberto em que confiamos. Torne -se um patrocinador através da nossa página OpenCollective.
Appium é incrivelmente grato ao nosso desenvolvimento e parceiros estratégicos por sua contribuição sustentada do desenvolvimento e liderança de projetos!


Uma lista completa de patrocinadores está disponível em nossa página de patrocinadores.
Apache-2.0
@appium/logger Package está com licença ISC.