MulaiMulai sekarang secara gratis

Uji unit: Pasar valuta asing

Mari berlatih membuat dan memprogram mock dalam konteks perbankan! Lengkapi uji unit untuk ExchangeApp, yang menggunakan European Central Bank. Karena Anda sedang menguji logika convertEuroTo(), jangan memock method tersebut. Sebagai gantinya, mock dependensinya agar Anda dapat memeriksa apakah fungsinya berjalan dengan benar!

Paket JUnit dan Mockito yang diperlukan telah diimpor untuk Anda.

Latihan ini adalah bagian dari kursus

Pengantar Pengujian di Java

Lihat Kursus

Petunjuk latihan

  • Buat mock untuk EuropeanCentralBankServer.
  • Gunakan sintaks yang benar untuk memprogram mock agar mengembalikan 12345.0.
  • Verifikasi bahwa konversi mata uang menghasilkan keluaran yang diinginkan.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

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, ____);
    }
}
Edit dan Jalankan Kode