Iniciando com Detox framework — 1/4

Utilize detox para saúde dos seus testes

Jhonatas Matos
Quia Digital
5 min readOct 8, 2020

--

Sabemos que o inglês é um idioma muito utilizado dentro da área de tecnologia, porém ao iniciar os estudos com uma nova linguagem, ferramenta ou framework, caso não tenhamos tanto dominio no idioma podemos nos deparar com algumas barreiras.
Pensando nisso, Antônio Henrique nosso QA na Go.K Digital, resolveu contribuir para a comunidade brasileira de automação de testes com a tradução do Getting Started do repósitorio oficial do Detox.

“Fazer a tradução do framework Detox sem sombra de dúvidas foi um desafio, estávamos com a grande ideia de que deveríamos ajudar a comunidade brasileira desse framework a poder ler e entender a documentação igual todos os outros países fazem, sabemos que nem todos tem um inglês técnico avançado e por isso o projeto de traduzir a documentação foi criada. Eu e meu time Marco Antonio Martins e Eduarda Cristina Lizaldo cujo são tradutores começamos então a usar todas as metodologias de tradução para trazer assim o melhor projeto possível, foram 2 meses trabalhando em 8 páginas que formam todo o Readme do Detox, e hoje podemos nos orgulhar bastante desse projeto e saber que estamos agregando para a comunidade do framework de uma forma bem positiva.”

Bem-Vindo ao Detox!

Neste tutorial, te orientaremos na configuração do seu projeto em Detox passo a passo.

Alguns passos são maiores que os outros: uns são apenas um grande parágrafo, enquanto outros, são tutoriais completos com várias etapas. Acredite — é tudo necessário, já que uma vez configurado, fica fácil e rápido de seguir com testes de escrita.

Passo 1: Configuração do ambiente

Instalação do Node.js

Node.js é o processo JavaScript onde Detox opera. Instale o Node8.3.0ou uma versão mais recente.

Existem algumas formas de instalar o node.js:

  1. Baixe na página de download oficial
  2. Use homebrew
  3. Use nvm — caso precise autorizar que várias versões sejam instaladas na mesma máquina

Recomendamos usar homebrew:

brew update && brew install node
  • Sugestão: Verifique se a instalação foi bem sucedida digitando

node -vno terminal para exibir a atual versão do node. É necessário ser 8.3.0ou mais recente.

Instale as ferramentas de linha de comando Detox (detox-cli)

O pacote facilita para Detox operar a partir da linha de comando. detox-cli deve ser instalado globalmente, permitindo o uso dessas ferramentas fora dos scripts npm. detox-cli é apenas um script que coordena através da linha de comando de dentro do pacote detox (em node_modules/.bin/detox).

node_modules/.bin/detox

Instale dependências especificas da plataforma, ferramentas e dev-kits

Depende da/s plataforma/s que se tem em mente (iOS, Android), aproveite para seguir, também, esses tutoriais de configuração de ambiente:

Passo 2: Adicione Detox ao seu projeto

Instale o módulo node Detox

Caso tenha algum projeto em React Native, vá para sua pasta raiz (onde package.jsoné encontrado) e digite o seguinte comando:

npm install detox --save-dev

Caso tenha tiver um projeto sem integração Node (como o projeto nativo), adicione package.json à pasta raiz do seu projeto:

{
"name": "<your_project_name>",
"version": "0.0.1"
}

Dê nome ao seu projeto em package.json e, em seguida, use o seguinte comando:

npm install detox --save-dev --no-package-lock

Agora Detox deve estar em node_modules/detox

Sugestão: Lembre-se de adicionar node_modulesà pasta do seu arquivo git-ignore (por exemplo .gitignore).

Preparando o executor de testes 🏃‍

Detox encarrega a vigente execução do código de teste JavaScript para um executor de testes definido. Ele suporta os populares Jeste Mochafora da caixa. É necessário escolher e definir um deles previamente, mas é possível alterar mais tarde, caso mude de ideia.

  • A sugestão é utilizar Jest, uma vez que fornece desempenho paralelo de teste e ciclo de vida de uma integração em Detox. Para configurá-lo, siga nosso tutorial completo para Jest.
  • Mocha, embora sua integração não seja completa, ainda é leve e um pouco mais fácil de configurar. Para configurá-lo, siga nosso tutorial para Mocha.

Nota: Detox não é vinculado com o Mocha, Jest, ou com outra estrutura específica de diretórios. Ambos são apenas uma recomendação — eles podem ser substituídos sem interferir na implementação interna do Detox em si.

Aplicar configuração Detox

Caso tenha completado o setup do executor de testes com sucesso usando detox init, o arquivo .detoxrc.json deve estar presente contendo a configuração esquelética do Detox para uso. Esta configuração é imprecisa e deve ser configurada corretamente. Agora é necessário criar ou editar esse arquivo e aplicar a configuração adequada e específica para o seu projeto.

Observe que Detox explora uma configuração através de vários arquivos. Começa a partir do diretório de trabalho atual, e prossegue para as opções a seguir, nesta ordem:

1. .detoxrc.js
2. .detoxrc.json
3. .detoxrc
4. detox.config.js
5. package.json(seção "detox")

Se preferir usar outra coisa no lugar de .detoxrc.json, por exemplo, caso queira manter todas as configurações de projeto em um só lugar, é possível criar uma seção detox em package.json. Se preferir separar as configurações, todas as outras opções são válidas.

Dependendo da plataforma que vai ser utilizada (IOS, Android), para uma explicação completa da configuração em uma plataforma específica (e mais um monte de outras coisas sobre plataformas específicas, onde são aplicáveis), use os seguintes tutoriais:

Passo 3: Desenvolva seu aplicativo e faça testes em Detox

  1. Desenvolva seu aplicativo

Use um método conveniente nas ferramentas das linhas de comando Detox para desenvolver o projeto com facilidade:

detox build

➢ Sugestão: Note que o comando de construção atual foi especificado na configuração Detox (Ex: em .detoxrc.json ou package.json).

➢ Veja "build": “xcodebuild -project …” inserido em ios.sim.debug, ou ./gradlew asssembleDebug assembleAndroidTest em android.emu.debug.

2. Faça os testes (finalmente!)

Use a linha de comando do Detox para testar seu projeto com facilidade:

detox test

Pronto. Seu primeiro teste Detox está funcionando!
Depois, vamos ver sobre uso e como fazer os testes com êxito.

--

--