Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Teste Modular com JUnit | Testando Aplicações Backend
Spring Boot Backend

bookTeste Modular com JUnit

Deslize para mostrar o menu

Ao analisarmos a arquitetura da aplicação, pulamos o diretório test, que foi destinado para os testes. Agora, será feita uma análise detalhada de como escrever esses testes e quais são os requisitos para isso.

Conceitos Básicos

Para testes, será utilizada a biblioteca JUnit. Este é um dos frameworks mais populares para testes unitários em aplicações Java. É simples de utilizar e integrar, especialmente com o Spring Boot.

Para utilizar o JUnit, é necessário adicionar uma dependência no arquivo pom.xml.

Agora estamos prontos para escrever nosso primeiro teste em nossa aplicação!

Escrevendo Teste

Agora vamos escrever um teste que não está diretamente relacionado à nossa aplicação, mas irá ajudar você a entender o conceito de testes.

No Spring Boot, os testes geralmente são localizados no diretório src/test/java, que é criado automaticamente ao inicializar o projeto. Aqui, podemos criar nosso teste.

Vamos criar uma classe chamada SimpleTest, e dentro dela, podemos criar um método de teste chamado testSum().

SimpleTest

SimpleTest

copy

A anotação @Test no JUnit indica que o método é um teste e deve ser executado durante o processo de teste.

Dentro do teste, é utilizada uma asserção: assertEquals(4, result), que verifica se o resultado do cálculo corresponde ao valor esperado. Se o result não atender às expectativas, o teste será considerado malsucedido, sinalizando um problema na lógica do programa.

Ao executar nosso teste, é possível verificar que ele foi concluído com sucesso!

Regras para Escrever Testes

Em testes unitários, é fundamental adotar um sistema de nomenclatura claro e estruturado para classes e métodos, garantindo que os testes sejam legíveis e fáceis de manter.

Nomenclatura de Classes

O nome da classe sendo testada deve incluir o sufixo Test. Por exemplo, se estivermos testando uma classe chamada BookController, a classe de teste correspondente será nomeada como BookControllerTest.

Nomeação de Métodos

Os nomes dos métodos de teste devem ser descritivos, permitindo que qualquer pessoa lendo consiga entender o que está sendo testado. Um bom esquema de nomeação inclui: (O que está sendo testado) _ (Em quais condições) _ (Resultado esperado).

testCreateUser_whenInputIsValid_shouldReturnCreatedUser

Neste nome de teste, testCreateUser indica que o processo de criação de um usuário está sendo testado. A próxima parte, whenInputIsValid, descreve as condições sob as quais o teste é realizado — especificamente, quando a entrada do usuário é válida. Por fim, shouldReturnCreatedUser especifica o resultado esperado — o método deve retornar o usuário criado.

Resumo

Testes unitários utilizando JUnit permitem a verificação da correção de partes individuais de uma aplicação de forma isolada, garantindo alta qualidade de código e estabilidade do sistema quando alterações são realizadas.

O JUnit oferece ferramentas convenientes para escrever, executar e organizar testes, tornando-se a principal escolha para testes em aplicações Java, incluindo Spring Boot.

1. O que a anotação @Test faz no JUnit?

2. Qual convenção de nomenclatura deve ser utilizada para classes de teste no JUnit?

question mark

O que a anotação @Test faz no JUnit?

Selecione a resposta correta

question mark

Qual convenção de nomenclatura deve ser utilizada para classes de teste no JUnit?

Selecione a resposta correta

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 5. Capítulo 2

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Seção 5. Capítulo 2
some-alt