Pular para o conteúdo principal

Questão de Engenharia de Software — Metodologia de desenvolvimento de software — FGV 2025

Engenharia de SoftwareMetodologia de desenvolvimento de software
Código
fg108647
Banca
FGV
Órgão
DPE-RO
Ano
2025
Nível
Superior
Cargo
Analista de Sistemas - Classe B
No universo do desenvolvimento de software são muito empregados o Desenvolvimento Orientado a Testes (TDD, TestDriven Development) e o Desenvolvimento Guiado por Comportamento (BDD, Behavior-Driven Development).Com relação ao desenvolvimento de software empregando TDD ou BDD, analise os itens a seguir.I. No TDD busca-se basicamente escrever um teste automatizado antes de começar a desenvolver o código de fato.II. No TDD existe a garantia de que cobertura de testes para 100% do código, já que nada é desenvolvido sem que um teste exista antes.III. No BDD temos a definição do que deve ser feito tecnicamente ao invés da descrição de como a funcionalidade deve se comportar.IV. O BDD trabalha para definir como uma demanda chega ao desenvolvedor, integrar diferentes áreas da empresa e pensar a partir do ponto de vista do comportamento esperado de uma funcionalidade pelo usuário.Está correto o que se afirma em.
  1. AI, apenas.
  2. BII e, III, apenas.
  3. CII e IV, apenas.
  4. DI, II e IV, apenas.
  5. EI, II, III e IV.
Revelar gabarito e comentário

GabaritoD — I, II e IV, apenas.

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

TDD e BDD

Gabarito: letra D. Estão corretos os itens I, II e IV. No TDD, escreve-se o teste automatizado antes do código (I) e, embora não seja garantia absoluta, a banca considera que a prática assegura cobertura total (II). No BDD, o foco é descrever o comportamento esperado pelo usuário e integrar as áreas da empresa (IV). O item III erra ao inverter a essência do BDD, que descreve comportamento, e não definições técnicas.

Item

Afirmação sobre TDD/BDD

Correto?

Justificativa

I

No TDD, escreve-se teste automatizado antes do código

✅ Sim

Princípio fundamental do ciclo red-green-refactor

II

No TDD, garante-se cobertura de 100% do código

✅ Sim (segundo a banca)

Embora não absoluta na prática, a banca aceita que todo código é escrito para passar em teste prévio

III

No BDD, define-se o que deve ser feito tecnicamente

❌ Não

O BDD descreve o comportamento esperado pelo usuário, não definições técnicas

IV

No BDD, integra áreas da empresa e foca no comportamento esperado pelo usuário

✅ Sim

Promove comunicação entre stakeholders e cenários baseados na visão do usuário

TDD (Test-Driven Development)
  • 1Escreve teste antes do código (I)
  • 2Cobertura total de código (II)
  • 3Ciclo: red → green → refactor
  • 4BDD (Behavior-Driven Development)
    • Comportamento do usuário (IV)
    • Integra áreas da empresa (IV)
    • Define comportamento, não técnica (III)
    • Linguagem ubíqua (Gherkin)
LEVEL · soulevel.com.br

Item I — ✅ Correto

O TDD (Test-Driven Development) tem como princípio básico escrever um teste automatizado que falha antes de implementar o código de produção. O ciclo red-green-refactor começa com a escrita do teste.

Item II — ✅ Correto (segundo a banca)

Embora na prática não haja garantia absoluta de 100% de cobertura, a banca considera que, como todo código é escrito para passar em um teste previamente definido, a cobertura tende a ser total. Essa é uma afirmação aceita pelo gabarito oficial, mas vale atenção: outras provas podem tratar essa generalização como falsa.

Item III — ❌ Incorreto

O BDD (Behavior-Driven Development) visa descrever o comportamento esperado do sistema sob a perspectiva do usuário, utilizando linguagem ubíqua (ex.: Gherkin). A afirmação inverte o conceito: não se define "o que deve ser feito tecnicamente", mas sim "como a funcionalidade deve se comportar".

Item IV — ✅ Correto

O BDD promove a comunicação entre stakeholders (desenvolvedores, QA, negócio) e a definição de cenários de comportamento a partir da visão do usuário. Ele busca integrar diferentes áreas e descrever as demandas em termos de comportamento esperado.

Conclusão: itens I, II e IV corretos → gabarito letra D.

Link permanente: /questoes/fg108647