0

Android/Kotlin – Testes Unitários

Isaias Bueno
Isaias Bueno

É possível avaliar a lógica do app por meio de testes unitários quando você precisa executar testes com mais rapidez e não requer a fidelidade e a confiança associadas à execução de testes em um dispositivo real.


Com essa abordagem, você normalmente atende aos relacionamentos das dependências usando o Robolectric ou um framework de simulação, como o Mockito. Em geral, os tipos de dependências associadas aos seus testes determinam que ferramenta usar:


Se você tem dependências no framework do Android, especialmente aquelas que criam interações complexas com o framework, é melhor incluir dependências do framework por meio do Robolectric.


Se seus testes têm dependências mínimas no framework do Android ou se eles dependem apenas dos seus objetos, é possível incluir dependências simuladas por meio de um framework de simulação como o Mockito.


Configurando o ambiente de teste


No projeto do Android Studio, é preciso armazenar os arquivos de origem para testes unitários em module-name/src/test/java/. Esse diretório já existe quando você cria um novo projeto.


Também é necessário configurar as dependências de teste do projeto para usar as APIs padrão oferecidas pelo framework do JUnit 4. Se seu teste precisa interagir com dependências do Android, inclua a biblioteca do Robolectric ou do Mockito para simplificar seus testes unitários.


No arquivo build.gradle de nível superior do app, especifique as seguintes bibliotecas como dependências:


dependencies {
        // Required -- JUnit 4 framework
        testImplementation 'junit:junit:4.12'
        // Optional -- Robolectric environment
        testImplementation 'androidx.test:core:1.0.0'
        // Optional -- Mockito framework
        testImplementation 'org.mockito:mockito-core:1.10.19'
    }


Por Hoje é só pessoal, sucesso nos estudos.

0
0

Comentários (3)

1
Sisnando Junior

Sisnando Junior

02/07/2021 16:43

Show de bola Isaias. Excelente artigo.

1
Maria Santana

Maria Santana

02/07/2021 11:11

Nossa, muito obrigada Isaias, esse é um tópico muito importante para quem está desenvolvendo em kotlin.

1
Wellington Santos

Wellington Santos

02/07/2021 10:17

Eu sou mais familiarizado com o JUnit 5, ainda estou para arrumar tempo e aprender a usar o mokito, geralmente eu crio meus mock objects na mão, e realmente parece um trabalho desnecessário, principalmente por que sei que existe uma biblioteca pra fazer isso.

Já esse Roboeletric eu nunca tinha visto, já é mais uma coisa pra pesquisar.

Outra coisa, tem alguma diferença importante se os arquivos estiverem na pasta module-name/src/test/kotlin/ ? Geralmente é onde ficam os meus, a maioria dos projetos eu crio usando o comando gradle init então ele cria com essa estrutura.

Android|Kotlin Developer Github: https://github.com/IsaiasBueno

Brasil