Junior — Middle
Qual é a diferença entre objetos simulados e stubs no contexto de testes?
sobes.tech IA
Resposta da IA
No contexto dos testes, objetos simulados (mocks) e stubs servem para substituir componentes reais, mas têm objetivos diferentes:
-
Stub — é um objeto simples que devolve dados predefinidos para que o teste possa funcionar com um comportamento previsível. Ele não verifica como é chamado, apenas fornece as respostas necessárias.
-
Mock — é um objeto que não só imita o comportamento, mas também verifica se os métodos foram chamados com os parâmetros esperados e na ordem correta. Os mocks são usados para verificar interações.
Exemplo:
- Um stub pode devolver uma resposta fictícia de uma requisição de rede.
- Um mock verificará se o método de requisição foi chamado exatamente uma vez com uma URL específica.
No iOS, para criar mocks e stubs, frequentemente usam-se frameworks como OCMock ou Cuckoo.