Testen erwarteter Exceptions in JUnit

Wir können erwartete Exceptions mit der JUnit 5 assertThrows Behauptung testen. Diese JUnit-Behauptungsmethode gibt die geworfene Exception zurück, so dass wir sie auch verwenden können, um die Exception-Nachricht zu überprüfen.

JUnit Assert Exception

Hier ist ein einfaches Beispiel, das zeigt, wie man eine Exception in JUnit 5 behauptet.

String str = null;
assertThrows(NullPointerException.class, () -> str.length());

JUnit 5 Assert Exception Nachricht

Nehmen wir an, wir haben eine Klasse definiert als:

class Foo {
    void foo() throws Exception {
        throw new Exception("Exception Message");
    }
}

Lassen Sie uns sehen, wie wir die Exception sowie ihre Nachricht testen können.

Foo foo = new Foo();
Exception exception = assertThrows(Exception.class, () -> foo.foo());
assertEquals("Exception Message", exception.getMessage());

JUnit 4 Erwartete Exception

Wir können das erwartete Attribut der JUnit 4 @Test Annotation verwenden, um die erwartete Exception zu definieren, die von der Testmethode geworfen wird.

@Test(expected = Exception.class)
public void test() throws Exception {
    Foo foo = new Foo();
    foo.foo();
}

JUnit 4 Assert Exception Nachricht

Wenn wir die Exception-Nachricht testen wollen, müssen wir die ExpectedException-Regel verwenden. Unten ist ein komplettes Beispiel, das zeigt, wie man eine Exception sowie die Exception-Nachricht testet.

package com.journaldev.junit4;

import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;

public class JUnit4TestException {

    @Rule
    public ExpectedException thrown = ExpectedException.none();

    @Test
    public void test1() throws Exception {
        Foo foo = new Foo();
        thrown.expect(Exception.class);
        thrown.expectMessage("Exception Message");
        foo.foo();
    }
}

Das ist alles für einen schnellen Überblick über das Testen erwarteter Exceptions in JUnit 5 und JUnit 4.

Quelle: digitalocean.com

Jetzt 200€ Guthaben sichern

Registrieren Sie sich jetzt in unserer ccloud³ und erhalten Sie 200€ Startguthaben für Ihr Projekt.

Das könnte Sie auch interessieren:

Moderne Hosting Services mit Cloud Server, Managed Server und skalierbarem Cloud Hosting für professionelle IT-Infrastrukturen

JavaScript Chartbibliotheken: Die 5 besten Libraries im Vergleich

JavaScript, Tutorial
Vijona19 Mai um 13:36 Uhr JavaScript-Charting-Libraries für modernes Webdevelopment JavaScript-Charting-Bibliotheken haben sich zu zentralen Bestandteilen moderner Webanwendungen entwickelt und bieten Entwicklern leistungsstarke Möglichkeiten, Daten zu visualisieren und Erkenntnisse verständlicher zu präsentieren.…
Moderne Hosting Services mit Cloud Server, Managed Server und skalierbarem Cloud Hosting für professionelle IT-Infrastrukturen

Mongoose mit MongoDB und NodeJS einrichten

JavaScript, Tutorial
Vijona11 Juni um 8:29 Uhr Mongoose mit MongoDB und NodeJS einrichten Content1 Überblick zu Mongoose2 Voraussetzungen3 1. MongoDB4 2. NodeJS und NPM5 3. Mongoose-Projekt initialisieren6 4. Ein Modell definieren7 5. Dokumente…