O desenvolvimento dirigido por testes (TDD) é uma prática que visa melhorar a qualidade do código e a confiabilidade do sistema através da escrita de testes antes da implementação das funcionalidades. Além dos benefícios diretos como melhor cobertura de código e documentação automática, o TDD facilita a detecção precoce de defeitos e simplifica a depuração. Considerando essas vantagens e o conceito do TDD, é correto apontar que um dos benefícios adicionais do TDD é de que:

Questão

O desenvolvimento dirigido por testes (TDD) é uma prática que visa melhorar a qualidade do código e a confiabilidade do sistema através da escrita de testes antes da implementação das funcionalidades. Além dos benefícios diretos como melhor cobertura de código e documentação automática, o TDD facilita a detecção precoce de defeitos e simplifica a depuração. Considerando essas vantagens e o conceito do TDD, é correto apontar que um dos benefícios adicionais do TDD é de que:

Alternativas

A) a execução de testes de regressão é eliminada, visto que o TDD garante que todas as alterações no código estejam sempre corretas e livres de erros.

B) a documentação do sistema se torna desnecessária, pois o código é autoexplicativo e não necessita de documentação adicional.

C) a tempo de desenvolvimento é reduzido significativamente, pois o TDD automatiza todos os processos de codificação e testes, eliminando a necessidade de revisões manuais.

D) a depuração se torna mais simples, pois o código recentemente escrito será verificado e modificado, facilitando a localização e correção de problemas.

94%

E) a complexidade do design do sistema é aumentada, visto que o TDD exige a escrita de testes detalhados que cobrem todos os possíveis cenários de uso.

Explicação

No TDD (Test-Driven Development), o ciclo clássico é escrever um teste que falha, implementar o mínimo para passar e refatorar (red-green-refactor). Como os testes são executados com alta frequência e cada pequena mudança no código é imediatamente verificada, quando surge um defeito fica mais fácil:

  1. Identificar em que mudança o erro apareceu (pois as alterações são incrementais);
  2. Reproduzir o problema rapidamente (o teste falhando serve como evidência objetiva);
  3. Isolar a causa (o escopo do código modificado é pequeno e recém-escrito);
  4. Corrigir e validar a correção (rodando novamente o conjunto de testes).

Analisando as alternativas:

  • A é falsa: TDD não elimina testes de regressão; na prática, ele fortalece a regressão automatizada (os testes viram uma suíte de regressão).
  • B é falsa: TDD ajuda a documentar comportamento via testes, mas não torna desnecessária toda documentação.
  • C é falsa: TDD não “automatiza todos os processos”; pode até aumentar o tempo no curto prazo e reduzir retrabalho depois, mas não garante redução “significativa” sempre.
  • D é verdadeira: a depuração tende a ficar mais simples pela detecção precoce e pelo feedback rápido a cada pequena alteração.
  • E é falsa: em geral, TDD tende a melhorar o design (mais modular e testável), não a aumentar a complexidade por si.

Alternativa correta: (D).

Travou em outra questão? A gente resolve.

Crie sua conta grátis e resolva 3 questões por dia com explicação passo a passo, por texto ou foto.

Questões relacionadas

Ver últimas questões

Comece a estudar de forma inteligente hoje mesmo

Resolva questões de concursos e vestibulares com IA, gere simulados personalizados e domine os conteúdos que mais caem nas provas.

Cancele quando quiser.