JUnit examples, also with Mockito and DBUnit, for teaching purposes
- Scaricare la classe di produzione
Calculator, e piazzarla insrc/main/java/it/unisa/basic - Scaricare il Platform Launcher (
https://mvnrepository.com/artifact/org.junit.platform/junit-platform-console-standalone) e piazzarlo insrc/test/resources - Creare una classe di test
CalculatorTestinsrc/test/java/it/unisa/basic - Creare dei metodi di test per
add() - Lanciare la classe di test tramite CLI
- Compilare la classe
Calculator:javac src/main/java/it/unisa/basic/Calculator.java -d target/classes/ - Compilare la classe di test
CalculatorTest:javac -cp src/test/resources/junit-platform-console-standalone-1.8.2.jar:target/classes/ src/test/java/it/unisa/basic/CalculatorTest.java -d target/test-classes - Lanciare i test:
java -jar src/test/resources/junit-platform-console-standalone-1.8.2.jar -cp target/classes/:target/test-classes/ --scan-classpath
- Compilare la classe
- Modificare
add()introducendo un bug - Ricompilare la classe
Calculatorcome prima - Rilanciare i test come prima
- Aggiungere la dipendenza di JUnit Jupiter al
pom.xmloppure tramite GUI dell'IDE. Scaricabile da qui:https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter - Cliccare i "Play" verdi per lanciare i metodi di test, un'intera classe di test, oppure tutti i test.
- Creare una classe di test
CalculatorParameterizedTestinsrc/test/java/it/unisa/basic - Modificare i metodi di test per farne uno unico parametrico
- Lanciare i test
- Creare una classe di test
CalculatorDivideTestinsrc/test/java/it/unisa/basic - Creare dei metodi di test per
divide() - Lanciare i test
- Creare la classe
CalculatorFixedcon il metododivide()corretto - Creare la classe
CalculatorFixedDivideTestidentica aCalculatorDivideTestma che invocaCalculatorFixed - Rilanciare i test finché non passano
- Creare una classe
TestAllSuiteinsrc/test/java/it - Aggiungere la dipendenza di JUPlatform Suite al
pom.xmloppure tramite GUI dell'IDE. Scaricabile da qui:https://mvnrepository.com/artifact/org.junit.platform/junit-platform-suite - Lanciare
- Creare una classe
CalculatorStatefulinsrc/test/java/it/unisa/basic - Assegnare una variabile di istanza
esito, con valori EMPTY, OK, e ERROR, con metodo getter - Assegnare una variabile di istanza
valore, con metodo getter - Aggiungere le 4 operazioni, inclusa la cancellazione
- Definire lo statechart e creare tanti casi di test tali da coprire, almeno un volta, ogni transizione
- Raccogliere la logica in comuni in metodi setup e teardown
- Lanciare
- Definire almeno un caso di test per le 4 operazioni
- Lanciare