Skip to content

Pilot project for case study of using Model-Based Test for automated tests on mobile application

Notifications You must be signed in to change notification settings

andresilveiras/pilot-appium-graphwalker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Projeto Piloto: Automação de Testes Móveis com Model-Based Testing

🇧🇷 Português | 🇺🇸 English

Português

Visão Geral

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.

Stack Tecnológica

  • 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

Pré-requisitos

Ferramentas de Desenvolvimento

  1. Git
  2. IDE de sua preferência
    • Para Visual Studio Code: Instalar "Extension Pack for Java" da Microsoft
  3. Java JDK 21.0.5
  4. Maven

Ambiente Android

  1. Android Studio e ADB
  2. Appium
  3. Driver UIAutomator2
  4. Appium Inspector (opcional)
  5. GraphWalker

Configuração do Dispositivo

Para Dispositivo Físico

  1. Ativar modo desenvolvedor (verificar como é feito no seu aparelho, pois pode variar de modelo para modelo)
  2. Habilitar depuração USB
  3. Conectar ao computador via USB com compartilhamento de mídia
  4. Configurar permissões do Appium
  5. Instalar APK do aplicativo (disponível em src/main/resources)
    • Necessário habilitar instalação de fontes desconhecidas

Para Emulador

  • Configurar dispositivo virtual via Android Studio

Configuração do Projeto

  1. Clonar o repositório:

    git clone [URL do repositório]
  2. Verificar dados do dispositivo (físico ou emulado):

    adb devices
    
  3. Configurar variáveis do dispositivo em DriverRunner.java:

    • appPath: Diretório do repositório clonado
    • deviceName: Nome do dispositivo
    • deviceUdid: UDID do dispositivo
    • deviceOSVersion: Versão do Android

Execução dos Testes

  1. Instalar dependências (no terminal, entrar no diretório onde está o POM):

    mvn clean install
  2. Iniciar servidor Appium (em um terminal à parte, irá executar em segundo plano):

    appium
  3. Para dispositivos físicos:

    • Recomendado: Usar Vysor para espelhamento
  4. Executar testes:

    mvn org.graphwalker:graphwalker-maven-plugin:test

Modelo de Testes

Modelo de Testes

O modelo completo está disponível em src/main/resources/NotepadTestModel_v1.json

Créditos

English

Overview

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.

Technology Stack

  • 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

Prerequisites

Development Tools

  1. Git
  2. IDE of your choice
    • For Visual Studio Code: Install Microsoft's "Extension Pack for Java"
  3. Java JDK 21.0.5
  4. Maven

Android Environment

  1. Android Studio and ADB
  2. Appium
  3. UIAutomator2 Driver
  4. Appium Inspector (optional)
  5. GraphWalker

Device Setup

For Physical Device

  1. Enable developer mode (search how to do it in your device, because it varies from model to model)
  2. Enable USB debugging
  3. Connect to your PC via USB with media sharing enabled
  4. Configure Appium permissions
  5. Install app APK (available in src/main/resources)
    • Must enable installation from unknown sources

For Emulator

  • Set up virtual device via Android Studio

Project Setup

  1. Clone the repository:

    git clone [repository URL]
  2. Verify device data:

    adb devices
    
  3. Configure device variables in DriverRunner.java:

    • appPath: Cloned repository directory
    • deviceName: Device name
    • deviceUdid: Device UDID
    • deviceOSVersion: Android version

Running Tests

  1. Install dependencies (run this in a terminal in the folder where POM is located):

    mvn clean install
  2. Start Appium server (run this in a separate terminal):

    appium
  3. For physical devices:

    • Recommended: Use Vysor for screen mirroring
  4. Execute tests:

    mvn org.graphwalker:graphwalker-maven-plugin:test

Test Model

The complete model is available at src/main/resources/NotepadTestModel_v1.json

Credits

About

Pilot project for case study of using Model-Based Test for automated tests on mobile application

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages