Lancer une classe de test JUnit depuis du code

Tous les IDE classiques intègrent aujourd’hui un Runner JUnit afin de lancer les tests de façon intégrée à l’environnement.

Sauf qu’il est parfois utile de pouvoir les lancer à partir du code! Par exemple si les classes de tests sont l’objet même du logiciel et devront être lancés en dehors de l’environnement de développement.

Voici quelques lignes d’exemple qui permettront de faire cela:

import org.junit.internal.TextListener;
import org.junit.runner.JUnitCore;

public class Main {
  public static void main(String[] args) {
    JUnitCore runner = new JUnitCore();
    runner.addListener(new TextListener(System.out));
    runner.run(MaClasseDeTest.class);
  }
}