No contexto do Desenvolvimento Dirigido por Testes (TDD), a escrita de testes automatizados é uma prática comum utilizada para verificar o comportamento do software durante o processo de desenvolvimento. Com relação a esse contexto e sobre o conteúdo estudado, analise as asserções a seguir e a relação proposta entre elas: I. O TDD melhora a qualidade do código ao exigir a criação de testes automatizados para todas as funcionalidades, garantindo que novas implementações não quebrem o sistema existente. PORQUE II. A prática de TDD permite que todos os testes antigos passem automaticamente em cada novo incremento, sem a necessidade de revisão manual dos testes anteriores. A respeito dessas asserções, assinale a alternativa correta.

Questão

No contexto do Desenvolvimento Dirigido por Testes (TDD), a escrita de testes automatizados é uma prática comum utilizada para verificar o comportamento do software durante o processo de desenvolvimento.

Com relação a esse contexto e sobre o conteúdo estudado, analise as asserções a seguir e a relação proposta entre elas:

I. O TDD melhora a qualidade do código ao exigir a criação de testes automatizados para todas as funcionalidades, garantindo que novas implementações não quebrem o sistema existente.

PORQUE

II. A prática de TDD permite que todos os testes antigos passem automaticamente em cada novo incremento, sem a necessidade de revisão manual dos testes anteriores.

A respeito dessas asserções, assinale a alternativa correta.

Alternativas

A) As asserções I e II são falsas.

B) As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I.

C) A asserção I é uma proposição verdadeira, e a II é uma proposição falsa.

90%

D) A asserção I é uma proposição falsa, e a II é uma proposição verdadeira.

E) As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa da I.

Explicação

Análise da asserção I: No TDD, escreve-se primeiro um teste automatizado que falha, depois implementa-se o mínimo para fazê-lo passar e, por fim, refatora-se. Esse ciclo cria uma suíte de testes de regressão que ajuda a detectar rapidamente quando uma nova alteração quebra comportamento previamente implementado. Portanto, é correto afirmar que o TDD tende a melhorar a qualidade e ajuda a garantir que novas implementações não quebrem o sistema existente (ao menos no que estiver coberto por testes). Logo, a I é verdadeira.

Análise da asserção II: É verdade que, em TDD, os testes (incluindo os antigos) são executados frequentemente de forma automatizada a cada incremento/alteração (ex.: via IDE, pipeline de CI). Porém, dizer que isso ocorre “sem a necessidade de revisão manual dos testes anteriores” é problemático:

  • testes podem precisar ser ajustados quando requisitos mudam;
  • testes podem estar mal escritos, frágeis (flaky) ou cobrir comportamentos que deixaram de ser desejados;
  • a automação não elimina a necessidade de manutenção da suíte de testes.

Ou seja, a prática de TDD não garante que não haverá necessidade de revisão/manutenção dos testes antigos; ela apenas facilita a execução repetida deles. Assim, a II é falsa.

Como a I é verdadeira e a II é falsa, a alternativa correta é:

Alternativa correta: (C).

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.