Ho una funzione / metodo che genera qualche eccezione quando viene chiamato il database. Stavo scrivendo i test di Junit e mi è stato detto di avere una buona copertura. Quindi, dovrei scrivere il test Junit che cattura un'eccezione. Penso che non abbia alcun senso, dal momento che devo prendere in giro il database per farlo.
Quindi lo scenario intero sarà così:
public <returntype> method(<arguments>) {
//statments
try {
// database call
database.insert(<Argument>);
}
catch {
logger.error();
return error;
}
}
Ha senso solo quando c'è qualcosa di buono nel prendere la dichiarazione. Ma se è il solo logging, allora non ha senso fare un test Junit per questo.
Quindi dovrei scrivere questo test?
public void test_catch_Exception() {
//setup
database = ..//
when(database)
.calls(insert)
.return(Exception);
try{
//some statements for execution of the method
}
catch(Exception e) {
}
Assert.fail();
}