pengovbr / mod-sei-pen

Módulo de Integração ao Tramita.GOV.BR
30 stars 23 forks source link

Refatoração de testes funcionais usando Fixtures. TramiteProcessoAnexadoComDevolucaoTest e TramiteProcessoAnexadoTest #420

Closed mateussbh closed 1 day ago

mateussbh commented 9 months ago

Sua solicitação de melhoria está relacionada a um problema? Por favor descreva. Hoje muitos testes estão demorando demasiado tempo para concluírem e estão muito verbosos, prejudicando a execução tempestiva do teste automatizado completo e piorando sua eficiência. Alguns chegam a demorar 5 a 10 minutos somente para chegar no ponto que efetivamente ocorreria o teste da funcionalidade em questão.


Descreva a solução que você gostaria Faz-se necessário começarmos a refatoração dos testes funcionais, de modo que esses passem a usar classes de fixtures e DTOs, e para que o teste gaste tempo prioritariamente testando o que está proposto no escopo, e deixando a cargo das Fixtures a inclusão de dados e a montagem do cenário que antecede ao teste em si da funcionalidade, objetivando testes mais limpos e fáceis de entender.

Para esta issue, foram selecionados inicialmente 2 testes a serem refatorados, são eles:


Descreva alternativas que você considerou N/A


Contexto adicional Favor realizar a entrega dos códigos nas pastas das versões do SEI-Oficial (antigo super), SEI 4 e SEI3, e testá-los para as respectivas versões.

Obrigado.

marvdias commented 8 months ago

Segue evidência da refatoração dos testes: TramiteProcessoAnexadoComDevolucaoTest e TramiteProcessoAnexadoTest

mateussbh commented 8 months ago

Prezado, favor implementar os testes para a versão 3 e 4 do SEI.

marvdias commented 8 months ago

Segue evidência da refatoração dos testes para o sei3 e sei4: TramiteProcessoAnexadoComDevolucaoTest_sei4 , TramiteProcessoAnexadoTest_sei4 , TramiteProcessoAnexadoComDevolucaoTest_sei3 , TramiteProcessoAnexadoTest_sei3

mateussbh commented 8 months ago

Prezado @marvdias , conforme alinhamento com a coordenação na data de ontem, solicitamos que sejam transferidos as fixtures comuns (que serão usados também por testes de outros módulos) para dentro da estrutura do SEI, deixando na estrutura do Módulo do Tramita somente as fixtures e arquivos específicos para serem usado unicamente nos testes do Tramita. Obrigado.

marvdias commented 8 months ago

@mateussbh, conforme foi acertado, removi as fixtures que correspondem ao SEI deste PR, e realizei as modificações para que as fixtures utilizadas sejam as do SEI. Notar que o .env deve ser modificado nos campos ORG1_DATABASE_HOST=org1-database
ORG2_DATABASE_HOST=org2-database

mateussbh commented 7 months ago

Prezado, conforme alinhamento, tendo em vista a release 3.6.0 também mexerá na forma de usar fixtures e na estrutura de arquivos dos testes, vamos esperar a release citada ir pra master, para depois fazer o rebase com essa, incluindo somente o que for necessário, para evitar conflitos com merge. Desta forma, vou colocar esta issue interna momentaneamente como suspensa.

mateussbh commented 7 months ago

Prezado, favor criar novo PR, baseado na branch release 3.6.0, tendo em vista que nesta pré-release foi estabilizada a estrutura de teste usando Fixtures, e evitando alguns conflitos observados em merges recentes. Obrigado.

mateussbh commented 6 months ago

Prezado, conforme alinhamento, precisamos limpar esse PR, tendo em vista que os arquivos alterados da fixture já estão na master (e na branch release/3.7.0). Desta forma, peço que deixe somente os arquivos relacionados à refatoração dos respectivos testes.

marvdias commented 6 months ago

Rebase efetuado no PR https://github.com/pengovbr/mod-sei-pen/pull/484