Questão de Engenharia de Software — Processos de Software - Desenvolvimento Ágil — FGV 2024
Engenharia de Software›Processos 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:
Adesenvolvimento de testes incrementais a partir de cenários;
Benvolvimento dos usuários no desenvolvimento de testes e validação;
Cdesenvolvimento de test-first;
Duso de frameworks de testes automatizados;
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".
1Escreve teste que falha
2Implementa código mínimo
3Teste passa
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.