Pular para o conteúdo principal

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

Engenharia de SoftwareTeste de Software
Código
fg085523
Banca
FGV
Órgão
INPE
Ano
2024
Nível
Superior
Cargo
Tecnologista Júnior I - Desenvolvimento de Software para Operação de Satélites
O desenvolvimento orientado a testes (TDD) engloba um conjunto de práticas que visam garantir a detecção de erros e a qualidade do código gerado.No escopo do TDD, assinale a opção que apresenta a característica do teste unitário.
  1. ASer realizado desde o início do projeto.
  2. BSer desnecessário em pequenos projetos.
  3. CAvaliar mudanças em um sistema como um todo.
  4. DSer substituível por testes de regressão.
  5. EVerificar o funcionamento de módulos em conjunto.
Revelar gabarito e comentário

GabaritoA — Ser realizado desde o início do projeto.

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”.

Teste Unitário no Desenvolvimento Orientado a Testes (TDD)

Gabarito: letra A. No TDD, os testes unitários são escritos antes do código da funcionalidade, portanto são realizados desde o início do projeto. Essa prática garante que cada unidade de código seja testada isoladamente já nas primeiras iterações do desenvolvimento. As demais alternativas ou descrevem testes de integração/sistema ou apresentam conceitos incorretos sobre testes unitários.

Teste unitário no TDD
  • 1Características
    • Escrito antes do código
    • Executado desde o início
    • Foco em unidade isolada
    • Ciclo Red-Green-Refactor
  • 2O que NÃO é
    • Teste de sistema (avalia o todo)
    • Teste de integração (módulos juntos)
    • Substituível por teste de regressão
    • Desnecessário em projetos pequenos
LEVEL · soulevel.com.br

Alternativa A — ✅ Correta ⟵ GABARITO

O TDD preconiza que os testes (unitários) sejam escritos previamente ao código de produção. Assim, a execução desses testes ocorre continuamente desde o início do projeto, detectando regressões imediatamente. A alternativa reflete exatamente essa característica.

Alternativa B — ❌ Incorreta

Afirma que testes unitários seriam desnecessários em pequenos projetos. Na verdade, o TDD defende que testes unitários são benéficos independentemente do tamanho do projeto; eles fornecem uma rede de segurança e documentação viva. Pequenos projetos também se beneficiam da detecção precoce de erros.

Alternativa C — ❌ Incorreta

Avaliar mudanças em um sistema como um todo é característica de testes de sistema ou testes de regressão, não de testes unitários. Estes focam em unidades isoladas (funções, métodos, classes), não no sistema inteiro.

Alternativa D — ❌ Incorreta

Testes de regressão verificam se funcionalidades existentes não foram quebradas; eles podem incluir testes unitários, mas não os substituem. Testes unitários são específicos e isolados, enquanto testes de regressão são um conjunto mais amplo que pode abranger vários níveis.

Alternativa E — ❌ Incorreta

Verificar o funcionamento de módulos em conjunto é o papel dos testes de integração. Testes unitários testam cada módulo isoladamente, sem integração.

PEGA ESSA DICA!

Para questões sobre TDD, lembre-se do ciclo Red-Green-Refactor: escreva o teste (Red), implemente o código mínimo para passar (Green), depois refatore (Refactor). Os testes unitários são a espinha dorsal dessa prática.

Gabarito: letra A.

Link permanente: /questoes/fg085523