Pular para o conteúdo principal

Questão de Engenharia de Software — Teste de Software — FGV 2024

Engenharia de SoftwareTeste de Software
Código
fg089963
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.Assinale a afirmativa que melhor descreve o princípio fundamental do Test-Driven Development (TDD).
  1. AEscrever código de produção antes de criar testes para garantir que o código funcione conforme o esperado.
  2. BDesenvolver um conjunto de testes abrangentes apenas após a conclusão do desenvolvimento do código.
  3. CCriar e executar testes automatizados antes de escrever o código de produção para garantir que o código atenda aos requisitos.
  4. DEscrever código de produção e testes simultaneamente sem um processo definido para assegurar a funcionalidade.
  5. EUtilizar testes manuais para verificar o funcionamento do código antes de publicá-lo.
Revelar gabarito e comentário

GabaritoC — Criar e executar testes automatizados antes de escrever o código de produção para garantir que o código atenda aos requisitos.

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 C. O princípio fundamental do TDD é escrever e executar testes automatizados antes de escrever o código de produção, garantindo que o código atenda aos requisitos. Essa prática inverte a ordem tradicional (test-last) e é a base do ciclo red-green-refactor.


Alternativa A — ❌ Incorreta

Afirma que o código de produção deve ser escrito antes dos testes. Isso é o oposto do TDD, que exige que os testes sejam criados primeiro. A descrição corresponde ao desenvolvimento tradicional (test-last), não ao TDD.

Alternativa B — ❌ Incorreta

Desenvolver testes abrangentes apenas após a conclusão do código é exatamente o que o TDD busca evitar. No TDD, os testes são escritos antes e durante o desenvolvimento, não depois.

Alternativa C — ✅ Correta ⟵ GABARITO

Descreve precisamente o núcleo do TDD: criar e executar testes automatizados antes de escrever o código de produção. Isso assegura que o código seja escrito para atender aos testes (requisitos) e não o contrário. O contexto de apoio reforça: "TDD implica escrever o código de teste antes do código de produção".

Alternativa D — ❌ Incorreta

Escrever código de produção e testes simultaneamente sem um processo definido não é TDD. O TDD segue um ciclo disciplinado: escrever teste (que falha), escrever código mínimo para passar, refatorar.

Alternativa E — ❌ Incorreta

O TDD utiliza testes automatizados, não manuais. A automação é essencial para permitir execução rápida e frequente dos testes.


Gabarito: letra C.

Link permanente: /questoes/fg089963