Sobes.tech
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.