Questão FC213572
Um programador deve desenvolver testes unitários para uma função que interage com uma API externa, fornecida por um terceiro e acessada via internet. Para garantir que os testes se
Testes de Software
CESGRANRIO · 2024
Um programador deve desenvolver testes unitários para uma função que interage com uma API externa, fornecida por um terceiro e acessada via internet.
Para garantir que os testes sejam feitos de forma isolada, de acordo com as melhores práticas de testes, o programador deve
- substituir as chamadas à API por atribuições de constantes.
- estabelecer uma conexão VPN para a API externa.
- criar um mock da API.
- comentar as partes que chamam a API.
- criar breakpoints antes das chamadas da API.
Mostrar resposta e comentário
Gabarito
Certo
Comentário do professor
A alternativa correta é: criar um mock da API.
Em testes unitários devemos executar a unidade de código de forma isolada, ou seja, sem depender de rede, disponibilidade do serviço externo ou variações nos dados.
Um mock substitui a API externa por uma implementação controlada que:
- retorna respostas previsíveis e configuráveis;
- permite simular sucessos, erros e condições limite (por exemplo, timeouts, códigos de erro);
- registra chamadas para que possamos verificar parâmetros, método e número de invocações.
Benefícios práticos do mock nos testes unitários:
- Determinismo: mesmos inputs geram sempre os mesmos resultados;
- Velocidade: sem chamadas de rede os testes são muito mais rápidos;
- Confiabilidade: elimina falhas causadas por instabilidade externa;
- Maior cobertura: facilita testar cenários raros ou de erro que seriam difíceis de reproduzir com a API real.
Portanto, para garantir isolamento, repetibilidade e controle sobre os cenários testados, a abordagem correta é criar e usar um mock da API durante os testes unitários.
Conteúdo do catálogo FC Concursos · Atualizado em