3
respostas

Exception

Pessoal queria cair no Exception e testar o tratamento de erro que tem no CATH, alguem consegue me ajudar com isso, gostaria de passar uma mensagem no Exception e não mandar a mensagem que esta vindo do erro.

3 respostas

Olá Tiago!

Fica meio complicado sem saber exatamente o que você quer testar e o que você quer tratar. Mas em linhas gerais, você abre o seu bloco try, faz a verificação e depois você coloca no bloco catch e/ou finally o que você quer que aconteça caso ocorra o erro.

Veja se a documentação sobre tratamento de erros te ajuda com isso. Caso contrário, coloque seu código e diga exatamente o que você pretende fazer quando der o erro.

Espero ter ajudado!

acho que não soube explicar na verdade no meu codigo tem um try catch

e no cath ele pela o Exception ex e verifica a mensagem que esta vindo

exemplo

cath (Exception ex) { if(ex.messange.contais("database") ex.messange = "Erro no banco de dados"; }

eu queria testar esse cath aonde eu colocaria o valor do EX

deu pra entender?

Certo Tiago, se bem entendi você quer testar o valor da mensagem da sua exceção?

Se for isso, estava olhando classe Exception e os atributos são todos somente leitura inclusive o Message, então não vai conseguir alterar essa mensagem:

Mas acredito que você possa fazer o teste diretamente no Assert:

var ex = Assert.Throws<Exception>(() => MetodoQueDeveGerarAExcecao());
Assert.Contains("database", ex.Message);

Caso queira, compartilhe seu teste para que a gente possa ver o que podemos fazer para ajudar.