Questão de Engenharia de Software — Teste de Software — FGV 2024
Engenharia de Software›Teste de Software
Código
fg089969
Banca
FGV
Órgão
Prefeitura de Macaé - RJ
Ano
2024
Nível
Superior
Cargo
Analista Previdenciário - Especialidade: Analista de Sistemas
Test-Driven Development (TDD) é uma abordagem de desenvolvimento de software onde os testes são escritos antes do código que implementa a funcionalidade. No contexto da prática de Test-Driven Development (TDD), assinale a opção que descreve corretamente a sequência de etapas que um desenvolvedor deve seguir.
AEscrever o código de produção, criar os testes automatizados e depois refatorar o código.
BCriar os testes automatizados, escrever o código de produção para passar nos testes e depois refatorar o código.
CRefatorar o código existente, escrever novos testes automatizados e depois implementar novas funcionalidades.
DEscrever os casos de teste, refatorar o código existente e depois implementar o código de produção.
EImplementar o código de produção, refatorar o código, e por último, criar os testes automatizados.
Revelar gabarito e comentário▾
GabaritoB — Criar os testes automatizados, escrever o código de produção para passar nos testes e depois refatorar o código.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Test-Driven Development (TDD)
Gabarito: letra B. A sequência correta no TDD é escrever primeiro o teste automatizado (que falha), depois o código de produção mínimo para fazê-lo passar, e por fim refatorar o código — ciclo conhecido como Red-Green-Refactor. Essa é a essência do Desenvolvimento Orientado a Testes.
O TDD é uma prática de metodologias ágeis, onde os testes guiam a implementação. O contexto de apoio confirma: "No TDD, primeiro se escreve um teste que falha e depois se escreve um código para que o teste passe."
Etapa
Descrição
Ordem no TDD
Teste automatizado
Escrever teste que inicialmente falha
1º
Código de produção
Implementar código mínimo para passar no teste
2º
Refatoração
Melhorar o código sem alterar comportamento
3º
1Escrever teste que falha
2Código mínimo para passar
3Refatorar código
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Inverte a ordem: no TDD os testes são escritos antes do código de produção, não depois. Essa sequência (código → teste → refatoração) é típica do desenvolvimento tradicional, não do TDD.
Alternativa B — ✅ Correta ⟵ GABARITO
Descreve fielmente o ciclo do TDD: teste → código → refatoração. Primeiro escreve-se um teste automatizado (que inicialmente falha), depois implementa-se o código mínimo para passar no teste, e por fim refatora-se para melhorar a qualidade sem alterar o comportamento.
Alternativa C — ❌ Incorreta
Coloca a refatoração antes dos testes e da implementação. No TDD, a refatoração ocorre após o código passar no teste, não antes. Essa ordem contradiz o ciclo Red-Green-Refactor.
Alternativa D — ❌ Incorreta
Também troca a ordem: escrever casos de teste, depois refatorar e só então implementar o código. A refatoração deve vir após a implementação, e a implementação após os testes.
Alternativa E — ❌ Incorreta
Inverte completamente a sequência: implementar o código, refatorar e por último criar os testes. No TDD, os testes são o primeiro passo, não o último.
Gabarito: letra B — a única que descreve corretamente o ciclo do TDD.