Questão nº 43
Questão de TI - Soluções · FGV EPE 2024 (nº 43)
Metodologias de desenvolvimento de software definem paradigmas visando promover eficiência e qualidade do produto final. Entre estas, o desenvolvimento seguindo o modelo TDD (Test Driven Development) é realizado por meio de um ciclo composto por três etapas: red, green e refactoring.
Acerca dessas etapas, assinale a afirmativa correta.
- ANa fase red, os desenvolvedores escrevem testes de aceitação que devem falhar inicialmente.
- BNa fase green, os desenvolvedores escrevem o código mínimo necessário para fazer o código passar no teste. (alternativa correta)
- CNa fase refactoring, os desenvolvedores buscam otimizar o código de novas funcionalidades reprovadas no teste.
- DNa fase red, os desenvolvedores revisam o código para identificar oportunidades de melhoria.
- ENa fase green, os desenvolvedores documentam as mudanças realizadas na fase refactoring.
Resposta comentada
Gabarito Alternativa B
O TDD (Test-Driven Development) é uma técnica de desenvolvimento onde você escreve um teste antes de escrever o código que ele testa. O ciclo Red, Green, Refactor (Vermelho, Verde, Refatorar) guia esse processo: primeiro, você escreve um teste que falha (Red); depois, escreve o código mínimo para o teste passar (Green); e, por fim, melhora o código sem alterar seu comportamento (Refactor).
- (A) Incorreta: Na fase red, os desenvolvedores escrevem testes que devem falhar inicialmente, mas a especificação "de aceitação" é uma armadilha; TDD geralmente começa com testes de unidade, embora possa ser aplicado em outros níveis.
- (B) Correta: Na fase green, o objetivo é fazer o teste passar escrevendo o código mínimo e mais simples possível, sem se preocupar ainda com a elegância ou otimização.
- (C) Incorreta: Na fase refactoring, os desenvolvedores otimizam o código que já funciona e passou nos testes, não funcionalidades "reprovadas" ou novas. A armadilha aqui é confundir refatoração com correção de erros ou desenvolvimento de novas funcionalidades.
- (D) Incorreta: Na fase red, o foco é escrever um novo teste que falhe, não revisar o código para melhorias; isso é parte da fase de refatoração.
- (E) Incorreta: Na fase green, o foco é escrever código para passar no teste, não documentar mudanças de refatoração. A documentação é uma atividade separada e não o propósito principal desta fase.
Fonte: FGV EPE 2024 Analista de Gestão Corporativa - TI - Soluções (Caderno Tipo 1). Reproduzida para fins de estudo.