Questão de Engenharia de Software — Teste de Software — FUNDATEC 2025
Engenharia de Software›Teste de Software
Código
qg484484
Banca
FUNDATEC
Órgão
UFRGS
Ano
2025
Nível
Médio
Cargo
Técnico em Tecnologia da Informação/Área: Sistemas de Informação
Uma startup está desenvolvendo um aplicativo de mobilidade urbana que deve calcular rotas otimizadas para usuários em tempo real. O time de desenvolvimento adota a prática de Desenvolvimento Orientado a Testes (TDD) para garantir maior qualidade e reduzir retrabalho. Durante a implementação de uma nova funcionalidade de cálculo de tarifa dinâmica, o desenvolvedor cria inicialmente um teste automatizado que descreve o comportamento esperado, depois implementa o código mínimo necessário para que o teste passe e, em seguida, realiza refatorações para melhorar a estrutura do código sem alterar sua funcionalidade. Com base nesse cenário e nos princípios do TDD, assinale a alternativa que descreve corretamente a sequência de passos fundamentais dessa prática.
ARefatoração → Escrita do teste → Implementação mínima.
BImplementação mínima → Escrita do teste → Refatoração.
CImplementação mínima → Refatoração → Escrita do teste.
DEscrita do teste → Refatoração → Implementação mínima.
EEscrita do teste → Implementação mínima → Refatoração.
Revelar gabarito e comentário▾
GabaritoE — Escrita do teste → Implementação mínima → Refatoração.
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”.
Desenvolvimento Orientado a Testes (TDD) – Ciclo Fundamental
Gabarito: letra E. A sequência correta do TDD é: escrever o teste primeiro, depois implementar o código mínimo para passar no teste, e por fim refatorar. Esse ciclo é conhecido como "Red-Green-Refactor" e é a essência da prática de Desenvolvimento Orientado a Testes.
O TDD (Test-Driven Development) é uma técnica de programação que inverte a ordem tradicional: os testes são escritos antes do código de produção. O ciclo básico é:
Escreva um teste automatizado que descreve o comportamento desejado da nova funcionalidade.
Execute o teste – ele deve falhar (fase Red), comprovando que a funcionalidade ainda não existe.
Implemente o código mínimo necessário para fazer o teste passar (fase Green).
Refatore o código para melhorar a estrutura, mantendo todos os testes verdes (fase Refactor).
Essa sequência é exatamente a descrita na alternativa E: Escrita do teste → Implementação mínima → Refatoração.
1Escreve o teste
2Teste falha (Red)
3Código mínimo
4Teste passa (Green)
5Refatora
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Inverte a ordem, começando pela refatoração, o que não faz sentido, pois não há código para refatorar antes do teste e da implementação.
Alternativa B — ❌ Incorreta
Coloca a implementação mínima antes da escrita do teste, contrariando o princípio fundamental do TDD de que o teste deve ser escrito primeiro.
Alternativa C — ❌ Incorreta
Além de implementar antes do teste, ainda coloca a refatoração antes da escrita do teste, o que é logicamente impossível.
Alternativa D — ❌ Incorreta
A refatoração não ocorre antes da implementação; ela é a última etapa do ciclo.
Alternativa E — ✅ Correta ⟵ GABARITO
Reflete fielmente o ciclo Red-Green-Refactor: teste → código mínimo → refatoração.
PEGA ESSA DICA!
Para lembrar a sequência do TDD, associe ao semáforo: Red (teste falha), Green (código passa), Refactor (melhora o código). Essa é a ordem imutável.