LoslegenKostenlos loslegen

Unit-Test: Devisenmarkt

Üben wir das Erstellen und Programmieren von Mocks im Bankumfeld! Vervollständige den Unit-Test für die ExchangeApp, die die Europäische Zentralbank nutzt. Da du die Logik von convertEuroTo() testest, solltest du sie nicht mocken. Mock stattdessen ihre Abhängigkeit, damit du prüfen kannst, ob alles korrekt funktioniert!

Die benötigten JUnit- und Mockito-Pakete wurden bereits für dich importiert.

Diese Übung ist Teil des Kurses

Einführung in das Testen in Java

Kurs anzeigen

Anleitung zur Übung

  • Erstelle ein Mock für den EuropeanCentralBankServer.
  • Verwende die korrekte Syntax, um das Mock so zu programmieren, dass es 12345.0 zurückgibt.
  • Überprüfe, dass die Währungsumrechnung die gewünschte Ausgabe liefert.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

class Main {
    public static void main(String[] args) {
        launchMockitoTestsAndPrint(ExchangeAppTest.class);
    }
}

class ExchangeAppTest {
    @Test
    void convertEuroTo_convertsTST() {
        // Create a mock object for the EuropeanCentralBankServer
        EuropeanCentralBankServer bank = ____(EuropeanCentralBankServer.class);
        ExchangeApp exchangeApp = new ExchangeApp(bank);
        double euroAmount = 100;
        // Stub the mock to return a value for given input
        ____(exchangeApp.convertEuroTo("TST", 100)).____(12345.0);

        double tstAmount = exchangeApp.convertEuroTo("TST", euroAmount);

        System.out.println("Converted " + euroAmount + " EUR to " + tstAmount + " TST.");
        // Assert on the exact expected value of tstAmount
        ____(1234500, ____);
    }
}
Code bearbeiten und ausführen