Questão 42 Comentada - Universidade Federal de Rondonópolis (UFR) - Analista de Tecnologia da Informação - CS-UFG (2023)

O uso de APIs de testes contribui para o desacoplamento dos testes em relação à aplicação. Nesse contexto, o acoplamento estrutural pode ser definido como

  • A a forma mais leve de acoplamento, pois é desnecessário haver modificações constantes nos testes relacionados a cada classe ou método. Essa abordagem é amplamente adotada, já que sua implementação independe de um grande investimento de tempo.
  • B a aplicação de testes de unidade, que se concentra em testar unidades individuais de código (classes ou métodos) de forma isolada. Isso reduz a dependência dos testes em relação a partes extensas do código de produção.
  • C o acoplamento forte de testes, uma vez que qualquer alteração nas classes ou métodos de produção exige uma extensa modificação nos testes associados. Neste sentido, os testes são frágeis e tornam o código de produção rígido.
  • D o uso de injeção de dependência para substituir componentes reais por versões simuladas durante os testes. Isso possibilita que os testes sejam realizados com componentes simulados, reduzindo a dependência do código de produção.

Gabarito comentado da Questão 42 - Universidade Federal de Rondonópolis (UFR) - Analista de Tecnologia da Informação - CS-UFG (2023)

C - O acoplamento estrutural, também conhecido como acoplamento de dados, é caracterizado por uma forte dependência entre diferentes partes do código.

Em um sistema com alto acoplamento estrutural, uma alteração em um componente frequentemente exige modificações em outros componentes, inclusive nos testes.

No contexto de testes, se mudanças no código de produção resultam em alterações significativas nos testes associados, isso demonstra um alto grau de acoplamento.

Testes com forte acoplamento tornam-se frágeis, demandando atualizações constantes e dificultando a manutenção e evolução do software.

Essa fragilidade aumenta o tempo e o custo das modificações, tornando este tipo de acoplamento indesejável.

A alternativa C está correta porque descreve precisamente o cenário de acoplamento estrutural, onde os testes dependem excessivamente do código de produção, tornando-os rígidos e difíceis de manter.