Ho fatto questo piccolo esempio:
public class CalcolatriceTest {
@Before
public void setUp() throws Exception {
Calcolatrice c=new Calcolatrice();
int a=5,b=7;
assertTrue(a==4);
}
@After
public void tearDown() throws Exception {
}
@Test
public void testSomma() {
//fail("Not yet implemented");
Calcolatrice c=new Calcolatrice();
int a=5,b=7;
int s=c.somma(a,b);
assertEquals("somma non corretta",12,s);
}
@Test
public void testSomma1() {
//fail("Not yet implemented");
Calcolatrice c=new Calcolatrice();
int a=4,b=5;
int s=c.somma(a,b);
assertEquals("somma non corretta",9,s);
}
}
La mia idea è di andare a controllare oltre al risultato della somma anche la singola variabile.Nel @before ho imposto che a deve essere uguale a 4. Mi dovrò aspettare che il metodo testSomma fallisca mentre il metodo testSomma1 vada a buon fine, ma succede che entrambi i test falliscono. Dove sbaglio ? Ma poi assertTrue e assertEquals fanno la stessa cosa ?

Rispondi quotando