Este projeto demonstra a implementação de testes automatizados para aplicações móveis utilizando a abordagem de Model-Based Testing (MBT). O projeto serve como um estudo de caso prático para avaliar a eficácia desta metodologia na automação de testes mobile.
- Framework de Automação: Appium v2.12.0
- Ferramenta MBT: GraphWalker v4.3.3
- Linguagem: Java (JDK 21.0.5)
- Compatibilidade: Windows, Linux e macOS
- Plataforma de Teste: Android
- Git
- IDE de sua preferência
- Para Visual Studio Code: Instalar "Extension Pack for Java" da Microsoft
- Java JDK 21.0.5
- Download e instruções de instalação
- Importante: Versão 21 recomendada devido a problemas de compatibilidade com versões posteriores
- Maven
- Guia de instalação
- Configurar após a instalação do Java
- Android Studio e ADB
- Appium
- Requer Node.js
- Guia de instalação
- Driver UIAutomator2
- Appium Inspector (opcional)
- GraphWalker
- Ativar modo desenvolvedor (verificar como é feito no seu aparelho, pois pode variar de modelo para modelo)
- Habilitar depuração USB
- Conectar ao computador via USB com compartilhamento de mídia
- Configurar permissões do Appium
- Instalar APK do aplicativo (disponível em
src/main/resources)- Necessário habilitar instalação de fontes desconhecidas
- Configurar dispositivo virtual via Android Studio
-
Clonar o repositório:
git clone [URL do repositório] -
Verificar dados do dispositivo (físico ou emulado):
adb devices
-
Configurar variáveis do dispositivo em
DriverRunner.java:appPath: Diretório do repositório clonadodeviceName: Nome do dispositivodeviceUdid: UDID do dispositivodeviceOSVersion: Versão do Android
-
Instalar dependências (no terminal, entrar no diretório onde está o POM):
mvn clean install
-
Iniciar servidor Appium (em um terminal à parte, irá executar em segundo plano):
appium
-
Para dispositivos físicos:
- Recomendado: Usar Vysor para espelhamento
-
Executar testes:
mvn org.graphwalker:graphwalker-maven-plugin:test
O modelo completo está disponível em src/main/resources/NotepadTestModel_v1.json
- Sistema sob teste (SUT): Notepad by farmerBB
This project demonstrates the implementation of automated testing for mobile applications using the Model-Based Testing (MBT) approach. It serves as a practical case study to evaluate the effectiveness of this methodology in mobile test automation.
- Automation Framework: Appium v2.12.0
- MBT Tool: GraphWalker v4.3.3
- Language: Java (JDK 21.0.5)
- Compatibility: Windows, Linux, and macOS
- Testing Platform: Android
- Git
- IDE of your choice
- For Visual Studio Code: Install Microsoft's "Extension Pack for Java"
- Java JDK 21.0.5
- Download and installation instructions
- Important: Version 21 recommended due to compatibility issues with newer versions
- Maven
- Installation guide
- Configure after Java installation
- Android Studio and ADB
- Appium
- Requires Node.js
- Installation guide
- UIAutomator2 Driver
- Appium Inspector (optional)
- GraphWalker
- Enable developer mode (search how to do it in your device, because it varies from model to model)
- Enable USB debugging
- Connect to your PC via USB with media sharing enabled
- Configure Appium permissions
- Install app APK (available in
src/main/resources)- Must enable installation from unknown sources
- Set up virtual device via Android Studio
-
Clone the repository:
git clone [repository URL]
-
Verify device data:
adb devices
-
Configure device variables in
DriverRunner.java:appPath: Cloned repository directorydeviceName: Device namedeviceUdid: Device UDIDdeviceOSVersion: Android version
-
Install dependencies (run this in a terminal in the folder where POM is located):
mvn clean install
-
Start Appium server (run this in a separate terminal):
appium
-
For physical devices:
- Recommended: Use Vysor for screen mirroring
-
Execute tests:
mvn org.graphwalker:graphwalker-maven-plugin:test
The complete model is available at src/main/resources/NotepadTestModel_v1.json
- System Under Test (SUT): Notepad by farmerBB
