Skip to content

gabriel-secchi/TesteBrowserStack

Repository files navigation

Integração - BrowserStack - Gradle

Descrição

Este é uma projeto de exemplo que visa fazer a integração de upload do app e execução de testes automáticos no BrowserStack que é uma plataforma de emulação de devices

Atenção: Essa integração se refere a upload de apps e execução de testes através da plataforma BrowserStack utilizando o Gradle como forma automatizada do processo.

Começando

Após fazer login no BrowserStack, acesse a documentação de integração com o Gradle para obter as chaves de acesso. Documentação Neste link só iremos precisar mesmo das chaves de acesso que estão localizadas na categoria “Setting up

Tendo acesso à essas informações, seguimos para documentação real de integração que pode ser acessada pelo GitHub neste projeto browserstack/browserstack-gradle-plugin.
Esta documentação descreve bem o processo de configuração, então é só seguir os passos, porém estarei colocando aqui também para ficar registrado.

Configurando o project build.gradle

  • Abra seu projeto e acesse o build.gradle do projeto.
  • Dentro dele temos que implementar os seguintes códigos.
    O “maven”, e a dependência do BrowserStack.
    Este exemplo abaixo é somente a parte para a integração com o BrowserStack, você provavelmente irá ter mais código dentro do seu arquivo, então é necessário que você analise e mescle essas informações.
buildscript {
    repositories {
        maven {
            url "https://plugins.gradle.org/m2/"
        }
    }
    dependencies {
        classpath "gradle.plugin.com.browserstack.gradle:browserstack-gradle-plugin:3.0.3"
    }
}




Criando arquivo de configuração

Neste momento iremos criar um arquivo de configuração, em caso de execução de testes ele será responsável pela criação do emulador que irá rodar os testes do seu app.

  • Entre no modo de exibição de arquivos do projeto.
  • Na raiz do seu projeto crie um arquivo “json“ para configuração, pode ser qualquer nome, mas estarei usando como referência o seguinte nome “browserstack.config.json
    Esse arquivo deve conter os dados abaixo, porém você pode ajusta-lo conforme sua necessidade.
    Caso necessário, ao lado segue a lista de devices aceitos. Lista de devices
{
  "devices": [
    "Google Pixel 2"
  ],
  "deviceLogs": true,
  "networkLogs": true,
  "project": "Teste BrowserStack",
  "shards": {
    "numberOfShards": 3
  }
}




Configurando o app build.gradle

  • Abra o build.gradle do app.
    Neste arquivo temos que adicionar a referência para o plugin e implementar a configuração para a integração.
  • No início do arquivo adicione a referência do plugin, que pode ter várias formas dependendo da versão da sua aplicação, as mais comuns são:
plugins {
    id 'com.browserstack.gradle'
}

Ou

apply plugin: "com.browserstack.gradle"

Então verifique como está no seu arquivo e adicione.

  • Em seguida, podemos adicionar em qualquer local do arquivo, desde que esteja fora de qualquer objeto do gradle. Adicione o seguinte objeto de configuração.
browserStackConfig {
    username = "<seu_user_name>"
    accessKey = "<sua_access_key>"
    configFilePath = '<local_arquivo_json_de_configuracao>'
    //Exemplo: Se você colocou o arquivo na raiz do projeto como comentado anteriormente,
    //e utilizou o mesmo nome de arquivo, a propriedade "configFilePath" pode ser dessa forma.
    //configFilePath = 'browserstack.config.json'
}




Fazendo upload do app

  • Primeiramente, selecione a “build variant” que você quer utilizar.
  • Na sequência expanda o menu do gradle e clique em executar tarefa do gradle.
  • Na janela que abriu iremos rodar o seguinte comando, onde trocaremos o “${BuildVariantName}“ pelo nome de sua build variant.
gradle clean upload${BuildVariantName}ToBrowserstackAppLive

Para o caso de exemplo estou substituindo pela variante “debug“, então meu comando ficaria dessa forma.

gradle clean uploaddebugToBrowserstackAppLive
  • Feito isso é só dar um “Enter“ e o projeto irá executar a build e em seguida o upload automático para o BrowserStack - App Live.
    Após a primeira execução, essa configuração irá aparecer na caixa de seleção de execução de configuração do grade.

Lembre-se que se for executar o app localmente, essa configuração deve ser trocada para “App

Após o processo de build e upload, o app pode ser encontrado dentro da aba “App Live“ do BrowserStack, dentro do menu “Uploaded Apps




Rodando teste via BrowserStack

  • Segue o mesmo formato do upload do app, porém ao invés do comando de “upload”, vamos utilizar o comando de “execute
gradle clean execute${BuildVariantName}TestsOnBrowserstack

Novamente temos que substituir o “${BuildVariantName}“ pelo nome da nossa variante de build.
Dessa forma o BrowserStack irá rodar os testes criados no seu app e irá colocar o resultado de seus testes dentro da aba “App Automate“ lá no BrowserStack

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages