Páginas filhas
  • DAGROFRAME-4203 DT - Testes Unitários (JUnit/Mockito) e Quality Gate - JaCoCo / SonarQube

01. DADOS GERAIS

Produto:

TOTVS Agro Multicultivo

Linha de Produto:

Linha PIMS

Segmento:

Agroindústria

Módulo:Administração do Sistema
Função:

Cobertura de Testes

Requisito/Story/Issue (informe o requisito relacionado) :

DAGROFRAME-4203

02. SITUAÇÃO/REQUISITO

Criar um novo modelo de Testes Automatizados para o TOTVS Agro Multicultivo.

03. SOLUÇÃO

Inicialmente, fizemos o mapeamento das classes de testes existentes no projeto, utilizando a ferramenta JaCoCo para gerar relatórios em formato HTML que mostraram a porcentagem de cobertura de código. Com base nesses dados, identificamos a cobertura total e a cobertura dos módulos acordados (MC-core e MC-ejb). 

Em seguida, realizamos uma avaliação detalhada das bibliotecas e dependências de teste utilizadas, verificando se estavam atualizadas ou se poderiam ser otimizadas. E a partir dessa avaliação definimos o JUnit5 e o Mockito como bibliotecas com grande potencial de uso. Também implementamos a ferramenta do JUnit Vintage para que os testes antigos, que utilizam JUnit4, continuem funcionais sem a necessidade de alteração.

Além disso, analisamos novas possibilidades de dependências complementares, como:

  • AssertJ: Implementamos esta biblioteca para melhorar a fluência e expressividade das asserções nos testes, substituindo a ferramenta Hamcrest.
  • Arquillian: Avaliamos a implementação para possibilitar a execução de testes de integração diretamente em contêineres de aplicação, como WildFly, porém deixamos de lado por hora por incompatibilidade.

Também avaliamos e selecionamos plugins e extensões do IntelliJ que pudessem otimizar a geração e recomendação de testes unitários a partir do código existente. Utilizamos ferramentas com Inteligência Artificial para acelerar a construção de novos testes, aumentando a eficiência do processo.

04. DEMAIS INFORMAÇÕES

        Não se aplica

05. ASSUNTOS RELACIONADOS

        Não se aplica