Sto provando a creare dei casi di test che si accorgano quando un metodo invocato genera un eccezione.
quindi ho creato tre classi:
myException
package eccezioni;
public class myException extends Exception{
public myException (String message) {
super(message);
}
}
test
package eccezioni;
import static org.junit.Assert.*;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.rules.ExpectedException;
public class test {
@Test(expected=Exception.class)
public void yourTestMethodName() throws myException {
tryC c = new tryC();
c.prova();
}
e poi questa tryC
package eccezioni;
public class tryC {
public void prova()throws myException{
try{
System.out.println("richiamo");
int x = 0;
if (x ==0)
throw new myException("eccezione richiamata");
}catch(myException e){
e.printStackTrace();
}
}
}
}
il problema è che sebbene l'eccezione sia rilevata in console, Junit sembra non rilevare nulla.
E' una giornata intera che navigo per trovare una soluzione, non ne vengo a capo !