lezione 06

testing con junit

test unitari puliti per sistemi affidabili.

livello: base durata: 24 min output: test suite badge: testing ready

setup

// build.gradle
dependencies {
  testImplementation 'org.junit.jupiter:junit-jupiter:5.10.0'
}

assert

import static org.junit.jupiter.api.Assertions.*;

@Test
void sumWorks() {
  assertEquals(4, 2 + 2);
}

parameterized

@ParameterizedTest
@ValueSource(ints = {1,2,3})
void positive(int value) {
  assertTrue(value > 0);
}

best practice

  • nomina i test con intent chiaro
  • una responsabilità per test
  • usa fixture leggere

panoramica

In questo capitolo su testing con junit, test unitari puliti per sistemi affidabili. L'obiettivo è trasformare i concetti in micro-pattern riutilizzabili con esempi piccoli e verificabili.

Lavora in sequenza: leggi, prova, modifica gli snippet e annota i trade-off principali (performance, leggibilità, manutenzione).

badge: testing ready

obiettivi

  • capire e applicare setup in uno scenario reale
  • capire e applicare assert in uno scenario reale
  • capire e applicare parameterized in uno scenario reale
  • capire e applicare best practice in uno scenario reale

scheda rapida

import java.util.List;

public class Main {
  public static void main(String[] args) {
    var dati = List.of(1, 2, 3);
    var out = dati.stream().map(x -> x * 2).toList();
    System.out.println(out);
  }
}

Adatta questo scheletro agli esempi della lezione e sostituisci i dati con il tuo dominio.

mini progetto

Suite di test per calcolo imposte.

  • scrivi TaxCalculator
  • aggiungi test parametrici
  • copri edge cases
  • esegui la suite

output atteso: uno script o query ripetibile con risultati verificabili.

checklist

  • ho eseguito gli snippet e controllato l'output
  • ho annotato almeno 2 trade-off
  • ho completato il mini progetto
  • ho salvato un riepilogo personale
start a brief