MUnit para programadores Java: asserções de teste

MUnit para programadores Java: asserções de teste

MUnit para programadores Java: asserções de teste
cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br


No centro dos testes de unidade há afirmações que fornecem um mecanismo para comparar resultados esperados com resultados reais. O JUnit fornece uma grande variedade de métodos de conveniência sobrecarregados que executam asserções lógicas predefinidas, como teste de igualdade, negações e condições especificadas por um correspondente. O MUnit também fornece um conjunto semelhante de recursos de asserção, como afirmar dois valores como iguais, validar uma condição lógica e uma variedade de outras asserções personalizadas que replicam asserções JUnit familiares.

Afirmar igualdade

Afirmar igualdade é a validação mais simples de configurar. O JUnit fornece um método que aceita três parâmetros: eles são o valor esperado, seguido pelo valor real e, opcionalmente, precedido por uma mensagem para saída em falha.

Fig 1: Teste JUnit mostrando como afirmar a igualdade.

MUnit oferece o equivalente. Uma comparação de igualdade simples do esperado com os valores reais com um parâmetro de mensagem opcional que é gerado quando o teste falha.

Fig 2: Teste MUnit mostrando como afirmar a igualdade.

Afirme que uma condição é verdadeira

Uma modificação da asserção de igualdade é a Afirme que expressão que afirma que um valor real satisfaz uma condição especificada por um correspondente. O matcher é fornecido pelas bibliotecas hamcrest. O Hamcrest é uma estrutura para escrever objetos correspondentes, permitindo que as regras de ‘correspondência’ sejam definidas declarativamente.

Fig 3: afirma que a matriz contém pelo menos “gato” e “hamster”.

MUint replica funcionalidade semelhante com o AssertThat processador.

Fig 4: afirma que a matriz contém pelo menos “hamster”.

Matchers

As ferramentas MUnit fornecem um conjunto de correspondentes gravados como funções DataWeave que fornecem condições de asserção. Eles replicam correspondentes comuns de hamcrest, como os de String: começa com, termina com, contemString, e coletores de coleção, como everyIteme hasItem.

Afirmação do cliente e correspondentes

Alguns casos de uso de teste podem não ser testados adequadamente usando as asserções ou correspondentes prontos para o uso, o que requer um método para criar comportamentos de asserção do cliente. É por isso que o Hamcrest fornece uma classe abstrata (TypeSafeMatcher) para estender e implementar a lógica de correspondência personalizada.

Fig. 5: Combinador personalizado de Hamcrest.

Fig. 6: Importar método estático para usar como correspondência de Hamcrest.

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br

O MUnit fornece duas maneiras de criar expressões de clientes que fornecem lógica de asserção: Assert expression e Run Custom. Isso pode ser expresso como um script simples do DataWeave que faz uma comparação, implementado como um correspondente do DataWeave personalizado ou como um org.mule.munit.assertion.api.MunitAssertion implementação.

Fig. 7: Uma expressão de validação personalizada escrita no DataWeave 2.0.

Matchers personalizados do DataWeave

Para aumentar a capacidade de reutilização da lógica de asserção, os correspondentes correspondentes do DataWeave podem ser criados e externalizados em um script DataWeave localizado no diretório de recursos de teste (src / test / recursos).

Fig 8: Correspondente personalizado do DataWeave CustomMatchers.dwl.

Fig 9: Use o CustomMatchers :: beACat () combinador personalizado.

Asserções MUnit personalizadas

Todo o poder do Java pode ser liberado para desenvolver uma asserção customizada implementando o org.mule.munit.assertion.api.MunitAssertion interface e executar() método. É necessária uma dependência no módulo MUnit :: Assert.

A asserção customizada é referenciada no processador de eventos Run Custom.

E também deve ser configurado no mule-artifact.json como um pacote exportado.

Conclusão

Os recursos de asserção fornecidos pelo MUnit replicam as asserções mais usadas pelos desenvolvedores dos testes JUnit. Inclui conveniências ao predefinir tipos de asserção – como Afirmar iguais – mas também permite que o desenvolvedor crie testes de asserção personalizados com o Correspondentes personalizados do DataWeave. Um desenvolvedor Java adicionará facilidade à maneira pela qual o MUnit fornece testes de asserção e graças à sua replicação fiel de asserções JUnit típicas e correspondentes HamCrest.

Se você estiver interessado em aprender mais sobre as atividades relacionadas ao MUnit e DevOps, essenciais para a implementação de aplicativos Mule prontos para produção, considere fazer o nosso curso Anypoint Platform Development: Production-Ready Development Practices (Mule 4).


cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br
Leia Também  A página de destino perfeita: exemplos da página de destino e 12 dicas
Luiz Presso
Luiz Presso