1
resposta

Boas práticas com mensagens de exceções

Pessoal, boa tarde! Gostaria de saber se deixar o texto das mensagens das exceções direto no lançamento delas é uma boa prática. Imagino o caso de, por exemplo, alterando o texto da exception sendo lançada em um trecho, o teste dessa mensagem vai começar a falhar, então vou ter que sair copiando e colando as alterações toda vez que forem feitas. Seria uma boa prática deixar as mensagens como constantes públicas, ou algo do tipo? Ou isso seria overengineering?

1 resposta

Olá Hudson, tudo bem?

Eu costumo colocar textos nas exceções e nos testes, porque me sinto mais confortável que meus testes esperem exceções com textos específicos.

Porém, olhando por outro lado, em um sistema grande, onde vários pontos podem lançar a mesma exceção com a mesma mensagem de erro, é possível utilizar essas mensagens como constantes. Mas eu acho válido separar a constante da biblioteca da constante dos testes, ou mesmo utilizar apenas texto nos testes.

Como alternativa, você pode criar suas próprias exceções, que lançará mensagens padrões e seus testes buscam essas exceções.

Espero ter ajudado!