Sobes.tech
Junior — Middle

Kunt u uitleggen wat tests met parameters inhouden en waarom ze worden gebruikt?

sobes.tech AI

Antwoord van AI

Geparameteriseerde tests zijn tests die meerdere keren worden uitgevoerd met verschillende invoergegevenssets. Dit stelt je in staat om dezelfde logica te controleren met verschillende waarden zonder code te dupliceren.

Waarom gebruiken:

  • Ze verhogen de testdekking.
  • Ze vereenvoudigen het onderhoud, omdat één test meerdere gevallen controleert.
  • Ze maken tests leesbaarder en compacter.

Voorbeeld in JUnit 5:

import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.ValueSource;

class ExampleTest {
    @ParameterizedTest
    @ValueSource(strings = {"racecar", "radar", "level"})
    void testPalindrome(String candidate) {
        assertTrue(isPalindrome(candidate));
    }

    boolean isPalindrome(String text) {
        return new StringBuilder(text).reverse().toString().equals(text);
    }
}