Pular para o conteúdo principal

Questão de Engenharia de Software — Desenvolvimento de Software — CESPE / CEBRASPE 2024

Engenharia de SoftwareDesenvolvimento de Software
Código
ce190870
Banca
CESPE / CEBRASPE
Órgão
TST
Ano
2024
Nível
Médio
Cargo
Técnico Judiciário - Área: Apoio Especializado - Especialidade: Programação
Assinale a opção em que é apresentada uma técnica de desenvolvimento de software orientada a testes que é voltada para o atendimento dos requisitos do sistema com base no negócio, que utiliza exemplos e dublês de teste e que descreve funcionalidades por meio da sintaxe dado que, quando e então.
  1. Ateste unitário de software
  2. Bdesenvolvimento orientado por comportamento (BDD)
  3. Cdesenvolvimento guiado por testes (TDD)
  4. Ddesenvolvimento guiado por testes de aceitação (ATDD)
  5. Etestes de aceitação de usuário (UAT)
Revelar gabarito e comentário

GabaritoB — desenvolvimento orientado por comportamento (BDD)

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 por Comportamento (BDD)

Gabarito: letra B. A técnica descrita — voltada para requisitos de negócio, uso de exemplos e dublês de teste, e sintaxe "dado que, quando e então" — é o Desenvolvimento Orientado por Comportamento (BDD), que estende o TDD com foco no comportamento do sistema a partir de cenários em linguagem natural.

A banca cobra a distinção entre diferentes abordagens orientadas a testes. O BDD (Behavior-Driven Development) define o comportamento esperado do sistema usando a estrutura Given-When-Then, com exemplos concretos e frequentemente emprega dublês de teste para simular dependências. É uma evolução do TDD que aproxima desenvolvedores, testadores e stakeholders do negócio.

Alternativa A — ❌ Incorreta

O teste unitário de software é uma prática de verificação de unidades individuais de código, geralmente feita por desenvolvedores. Não é orientado a requisitos de negócio, não utiliza a sintaxe Given-When-Then nem se foca em exemplos de negócio.

Alternativa B — ✅ Correta ⟵ GABARITO

O Desenvolvimento Orientado por Comportamento (BDD) corresponde exatamente à descrição: é uma técnica que usa exemplos (cenários) escritos em linguagem natural com a estrutura dado que, quando e então, dublês de teste (mocks/stubs) e tem como alvo o atendimento de requisitos de negócio.

Alternativa C — ❌ Incorreta

O Desenvolvimento Guiado por Testes (TDD) é focado em escrever testes unitários antes do código, seguindo o ciclo red-green-refactor. Embora também seja orientado a testes, não utiliza exemplos de negócio nem a sintaxe Given-When-Then; seus testes são escritos em código de programação, não em linguagem natural.

Alternativa D — ❌ Incorreta

O Desenvolvimento Guiado por Testes de Aceitação (ATDD) foca em testes de aceitação escritos antes da implementação, mas esses testes podem ser automatizados sem necessariamente usar a sintaxe Given-When-Then nem dublês de teste como característica central. O BDD é uma forma de ATDD, mas a descrição dada é mais específica ao BDD.

Alternativa E — ❌ Incorreta

Testes de Aceitação de Usuário (UAT) são realizados pelos usuários finais para validar se o sistema atende aos requisitos, mas não é uma técnica de desenvolvimento; é uma fase de testes. Não utiliza exemplos nem dublês de teste de forma sistemática, e não segue a sintaxe Given-When-Then.

PEGA ESSA DICA!

Para diferenciar BDD de TDD e ATDD, lembre-se: BDD usa linguagem de negócio com Given-When-Then; TDD foca em testes unitários em código; ATDD foca em testes de aceitação, mas não necessariamente no formato Given-When-Then.

Gabarito: letra B.

Link permanente: /questoes/ce190870