Estrutura de automação de interface de plataforma cruzada para jogos e aplicativos
跨平台的 Ui 自动化框架 , 适用于游戏和 App (中文版点这里))

Escreva uma vez, execute em qualquer lugar: o AirTest fornece APIs de plataforma cruzada, incluindo instalação de aplicativos, entrada simulada, afirmação e assim por diante. O AirTest usa a tecnologia de reconhecimento de imagem para localizar elementos da interface do usuário, para que você possa automatizar jogos e aplicativos sem injetar nenhum código.
Totalmente escalável: os casos do AirTest podem ser facilmente executados em grandes fazendas de dispositivos, usando a API de comando ou python. Os relatórios HTML com informações detalhadas e gravação de tela permitem localizar rapidamente pontos de falha. A NetEase constrói o AirLab sobre o projeto Airtest.
AirTestide: AirTestide é uma ferramenta de GUI pronta para a caixa que ajuda a criar e executar casos de uma maneira amigável. O AirTestide suporta um fluxo de trabalho de automação completo: create -> run -> report .
POCO: POCO adiciona a capacidade de acessar diretamente a hierarquia de objetos (widgets da interface do usuário) nas principais plataformas e mecanismos de jogo. Permite escrever instruções no Python, para obter automação mais avançada.
Comece da página inicial do Airtest
Use pip para instalar a biblioteca Python AirTest.
pip install -U airtestNa plataforma MacOS/Linux, você precisa conceder permissão para executar o ADB.
# for mac
cd {your_python_path}/site-packages/airtest/core/android/static/adb/mac
# for linux
# cd {your_python_path}/site-packages/airtest/core/android/static/adb/linux
chmod +x adbFaça o download do AirTestide da nossa página inicial se precisar usar a ferramenta GUI.
Você pode encontrar a documentação completa do AirTest no ReadThEdocs.
O AirTest visa fornecer API independente da plataforma, para que você possa escrever casos automatizados uma vez e executá-lo em vários dispositivos e plataformas.
from airtest . core . api import *
# connect an android phone with adb
init_device ( "Android" )
# or use connect_device api
# connect_device("Android:///")
install ( "path/to/your/apk" )
start_app ( "package_name_of_your_apk" )
touch ( Template ( "image_of_a_button.png" ))
swipe ( Template ( "slide_start.png" ), Template ( "slide_end.png" ))
assert_exists ( Template ( "success.png" ))
keyevent ( "BACK" )
home ()
uninstall ( "package_name_of_your_apk" )Para informações mais detalhadas, consulte a AirTest Python API Reference ou dê uma olhada no código da API
.air Usando o AirTestide, você pode criar facilmente casos automatizados como diretórios .air . O AirTest CLI fornece a possibilidade de executar casos em diferentes máquinas de host e plataformas de dispositivo de destino sem usar o próprio AirTestide.
# run cases targeting on Android phone connected to your host machine via ADB
airtest run " path to your .air dir " --device Android:///
# run cases targeting on Windows application whose title matches Unity.*
airtest run " path to your .air dir " --device " Windows:///?title_re=Unity.* "
# generate HTML report after running cases
airtest report " path to your .air dir "
# or use as a python module
python -m airtest run " path to your .air dir " --device Android:/// Experimente a execução de exemplo fornecido caso: airtest/playground/test_blackjack.air e consulte o uso da CLI. Aqui está uma amostra de corredor de vários dispositivos.
Solicitações de tração são muito bem -vindas.
Obrigado por todos esses ótimos trabalhos que tornam este projeto melhor.