4. 1.3 Referenzbeispiel - JUnit - Annotationen
für Testklassen
» keine Pflicht-Annotationen.
für die Testmethoden (Pflicht):
» @Test
für die Initialisierungsmethoden (optional):
» @Before
» @After
- werden ausgeführt vor bzw. nach jeder Testmethode.
» @BeforeClass
» @AfterClass
- ein Mal vor bzw. nach einer Testklasseninstanziierung, d.h. ein Mal für den ganzen Satz
der Testmethoden (die annotierten Methoden müssen "static" sein).
4
6. Kata - JUnit (1) - SimpleCalculatorMultiplicationTest
SimpleCalculatorMultiplicationTest* implementieren für:
» SimpleCalculatorApp#mul(...) Methode
Zu beachten
» aktive Anwendung der vorgestellten Methoden
» Ermittlung maximal möglicher Anzahl der fachlich relevanten Testfälle
___
* das Skeleton-Projekt erhältlich unter https://github.com/kaftanenko/edu.java
6
7. 2.1 ... - JUnit - parametrisierte Tests
Falls die Testlogik von einem Testfall zu einem anderen gleich ist
und die Testfälle sich nur durch die Testdatensätze unterscheiden:
@RunWith(Parameterized.class)
public class TestClass {
public TestClass(Arg1Type arg1, Arg2Type arg2, ...) { ... }
@Test
public void testMethod() { ... }
@Parameterized.Parameters
public static List<Object[]> testData() {
return ...;
}
}
7
8. Kata - JUnit (2) - SimpleCalculatorAdditionTest
SimpleCalculatorAdditionTest implementieren für:
» SimpleCalculatorApp#add(...) Methode
Zu beachten
» es sollte einen parametriesierten Test sein
___
* das Skeleton-Projekt erhältlich unter https://github.com/kaftanenko/edu.java
8
9. 3.1 ... - JUnit - Integration der Spring-DI
Falls die Verwendung der Spring-DI erwünscht ist:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration({ "<class-path-to-spring-bean-context-file>", ... })
public class TestClass {
@Autowired
private ISomeService serviceUnderTest;
...
}
9
11. Kata - JUnit (3) - SimpleCalculatorDivisionTest
SimpleCalculatorDivisionTest implementieren für:
» SimpleCalculatorApp#div(...) Methode
Zu beachten
» Spring Dependency Injection einsetzen
___
* das Skeleton-Projekt erhältlich unter https://github.com/kaftanenko/edu.java
11
12. Vielen Dank!
Microsoft „Partner of the year 2010“ Finalist
Ausgezeichnet von Gartner als „Cool Vendor 2010“ in Content Management
B-S-S Business Software Solutions GmbH
Wartburgstrasse 1
99817 Eisenach/Germany
Tel. +49 3691 709000
Mail kontakt@b-s-s.de
Web www.b-s-s.de
12