Comece agoraComece grátis

Teste de unidade: Mercado de câmbio

Vamos praticar a criação e a programação de mocks no contexto bancário! Complete o teste de unidade para ExchangeApp, que usa o European Central Bank. Como você está testando a lógica de convertEuroTo(), não a faça mock. Em vez disso, faça mock da dependência para verificar se ela funciona corretamente!

Os pacotes necessários do JUnit e do Mockito já foram importados para você.

Este exercicio faz parte do curso

Introdução a Testes em Java

Ver curso

Instruções do exercicio

  • Crie um mock para EuropeanCentralBankServer.
  • Use a sintaxe correta para programar o mock para retornar 12345.0.
  • Verifique se a conversão de moeda retorna a saída desejada.

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

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, ____);
    }
}
Editar e Executar Código