Pular para o conteúdo principal

Questão de Engenharia de Software — Processos de Software - Desenvolvimento Ágil — FGV 2024

Engenharia de SoftwareProcessos de Software - Desenvolvimento Ágil
Código
fg077373
Banca
FGV
Órgão
CVM
Ano
2024
Nível
Superior
Cargo
Analista - Perfil 8 - TI / Sistemas e Desenvolvimento - Tarde
A fase de testes de software em processos ágeis se caracteriza pela elaboração dos testes antes da implementação do código, permitindo a execução do teste enquanto o código está sendo escrito.A característica do XP que tem como fundamento esse conceito de teste é o:
  1. Adesenvolvimento de testes incrementais a partir de cenários;
  2. Benvolvimento dos usuários no desenvolvimento de testes e validação;
  3. Cdesenvolvimento de test-first;
  4. Duso de frameworks de testes automatizados;
  5. Euso de workflows em testes.
Revelar gabarito e comentário

GabaritoC — desenvolvimento de test-first;

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-First no Extreme Programming (XP)

Gabarito: letra C. A descrição apresentada — elaborar os testes antes da implementação do código e executá-los enquanto o código é escrito — corresponde exatamente à prática de desenvolvimento test-first, também conhecida como Test-Driven Development (TDD), uma das práticas fundamentais do Extreme Programming (XP).

Nas metodologias ágeis, especialmente no XP, escrever o teste antes do código garante que o software atenda aos requisitos desde o início e permite que o teste sirva como especificação executável. As demais alternativas representam conceitos importantes, mas não capturam especificamente a essência de "testes antes do código".

  1. 1Escreve teste que falha
  2. 2Implementa código mínimo
  3. 3Teste passa
  4. 4Refatora
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

"Desenvolvimento de testes incrementais a partir de cenários" refere-se aos testes de aceitação (ou testes funcionais), que são baseados em histórias de usuário e cenários. Embora também sejam importantes no XP, eles não implicam escrever os testes antes de implementar o código. A descrição do enunciado foca no momento da escrita dos testes (antes do código), e não na origem dos cenários.

Alternativa B — ❌ Incorreta

"Envolvimento dos usuários no desenvolvimento de testes e validação" é uma prática do XP (o cliente participa ativamente), mas o conceito-chave descrito é a sequência temporal (teste antes do código). O envolvimento do usuário não determina que os testes sejam escritos previamente.

Alternativa C — ✅ Correta ⟵ GABARITO

O desenvolvimento test-first (ou TDD) é exatamente a prática de escrever um teste automatizado que falha antes de implementar a funcionalidade correspondente. O código é escrito para fazer o teste passar, garantindo que o teste seja executado enquanto a implementação é feita. Essa é a característica do XP que melhor se alinha ao enunciado.

Alternativa D — ❌ Incorreta

"Uso de frameworks de testes automatizados" é uma ferramenta comum em XP e em outras metodologias, mas o enunciado não pergunta sobre a ferramenta, e sim sobre a prática de escrever testes antes do código. Frameworks automatizados podem ser usados tanto em test-first quanto em testes posteriores.

Alternativa E — ❌ Incorreta

"Uso de workflows em testes" não é uma prática específica do XP. Workflows referem-se a sequências de atividades, e não há uma relação direta com a elaboração antecipada de testes. No XP, o foco está no ciclo curto codificar-testar, e não em workflows formais.

Gabarito: letra C.

Link permanente: /questoes/fg077373