Documente Academic
Documente Profesional
Documente Cultură
Sumar
1.
2.
3.
4.
5.
6.
Lista de Figuri
Figure 1 Import JUnit n proiectul curent.......................................................................2
Figure 2 Fereastra de configurare a clasei care conine Test Case-ul............................2
Figure 3 Alegerea metodelor pentru care se vor genera Test Case-uri stub.................3
Figure 4 Clasa de testare generat conine metode stub pentru Test Case-uri,
adnotate cu @Test........................................................................................................ 3
Figure 5 Rularea Test Case-urilor create.......................................................................4
Figure 6 Rularea cu succes a tuturor Test Case-urilor create bara verde...................5
Figure 7 Rulare euat pentru o parte din Test Case-uri bara roie............................5
Lista de Tabele
Table 1 JUnit 3 vs. JUnit 4............................................................................................ 10
www.cs.ubbcluj.ro/~cretu
www.cs.ubbcluj.ro/~cretu
Figure 3 Alegerea metodelor pentru care se vor genera Test Case-uri stub
www.cs.ubbcluj.ro/~cretu
Figure 4 Clasa de testare generat conine metode stub pentru Test Case-uri, adnotate cu
@Test
www.cs.ubbcluj.ro/~cretu
fc1.Simplify();
assertEquals(5, fc1.getNumerator());
assertEquals(-1, fc1.getDenominator());
fc2.Simplify();
assertEquals(-5, fc2.getNumerator());
assertEquals(7, fc2.getDenominator());
www.cs.ubbcluj.ro/~cretu
Figure 7 Rulare euat pentru o parte din Test Case-uri bara roie
www.cs.ubbcluj.ro/~cretu
JUnit 3
JUnit 4
Observaii
Adnotarea @BeforeClass
public static void setUpBeforeClass() throws
Exception {
System.out.println("Setup for all subsequent
tests...");
//setup
}
@BeforeClass
public static void setUpAll() {
System.out.println("Setup for all
subsequent tests...");
//setup
}
metod static
ce se va executa
o singur dat,
nainte de rularea
vreunui Test Case
din clas (e.g.,
conectarea la
baza de date);
Adnotarea @AfterClass
public static void tearDownAfterClass() throws
Exception {
System.out.println("\ntearing all down");
}
@AfterClass
public static void tearDownAll() {
System.out.println("\ntearing all down");
}
metod static
ce se va executa
o singur dat,
dup rularea
tuturor Test
Case-urilor din
clas (e.g.,
deconectarea de
la baza de date );
Adnotarea @Before
public void setUp() {
fc1 = new FractionClass(12,30);
fc2 = new FractionClass(-25,7);
www.cs.ubbcluj.ro/~cretu
@Before
public void setup() {
fc1 = new FractionClass(12,30);
metod care se
va executa
nainte de fiecare
Test Case din
clas (e.g.,
iniializarea cu
date de intrare);
Adnotarea @After
public void tearDown() {
fc1 = fc2 = null;
System.out.println(fc1);
System.out.println(fc2);
}
@After
public void teardown() {
fc1 = fc2 = null;
System.out.println(fc1);
System.out.println(fc2);
}
metod care se
execut dup
fiecare Test
Case din clas
(e.g., tergerea/
dealocarea
variabilelor
temporare);
Adnotarea @Test
public void testSimplify() {
System.out.println("\ntestSimplify");
fc1.Simplify();
assertEquals(2, fc1.getNumerator());
assertEquals(5, fc1.getDenominator());
}
@Test
public void mySimplifyTest() {
System.out.println("\ntestSimplify");
fc1.Simplify();
assertEquals(2, fc1.getNumerator());
assertEquals(5, fc1.getDenominator());
}
- metoda este precedat de adnotarea @Test;
metod Test
Case propriu-zis
(e.g., testeaz
comportamentul
funciei
simplify() pentru
anumite date de
intrare care, de
exemplu, au fost
iniializate ntr-o
metod setUp()
sau setup());
www.cs.ubbcluj.ro/~cretu
metod Test
Case propriu-zis
care pune n
eviden
aruncarea unei
excepii
www.cs.ubbcluj.ro/~cretu
10
metod Test
Case propriu-zis
care pune n
eviden execuia
ntr-un interval
de timp precizat
Adnotarea @Ignore
public void ttestGetDenominator() {
System.out.println(\ntestGetDenominator);
int result = fc1.getDenominator();
assertTrue(getDenominator() returned +
result + instead of 30., result == 30);
result = fc2.getDenominator();
assertEquals(7, result);
}
@Ignore
@Test
public void testGetDenominator() {
System.out.println(\ntestGetDenominator);
int result = fc1.getDenominator();
assertTrue(getDenominator() returned +
result + instead of 30., result == 30);
result = fc2.getDenominator();
assertEquals(7, result);
}
- metoda este precedat de adnotarea @Ignore;
www.cs.ubbcluj.ro/~cretu
11
metod Test
Case care va fi
ignorat la
rularea testelor
(e.g., se folosete
atunci cnd codul
surs se
modific, iar Test
Case-ul
corespunztor nu
s-a adaptat nc).