Questão de Engenharia de Software — Teste de Software — FCC 2015
Engenharia de Software›Teste de Software
Código
fc025879
Banca
FCC
Órgão
TRT - 3ª Região (MG)
Ano
2015
Nível
Superior
Cargo
Analista Judiciário - Tecnologia da Informação
Um analista de TI está participando do desenvolvimento de um software orientado a objetos utilizando a plataforma Java. Na abordagem de desenvolvimento adotada, o código é desenvolvido de forma incremental, em conjunto com o teste para esse incremento, de forma que só se passa para o próximo incremento quando o atual passar no teste. Como o código é desenvolvido em incrementos muito pequenos e são executados testes a cada vez que uma funcionalidade é adicionada ou que o programa é refatorado, foi necessário definir um ambiente de testes automatizados utilizando um framework popular que suporta o teste de programas Java. A abordagem de desenvolvimento adotada e o framework de suporte à criação de testes automatizados são, respectivamente,
ABehavior-Driven Development e JTest.
BExtreme Programming e Selenium.
CTest-Driven Development e Jenkins.
DData-Driven Development and Test e JUnit.
ETest-Driven Development e JUnit.
Revelar gabarito e comentário▾
GabaritoE — Test-Driven Development e JUnit.
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”.
Abordagem de Desenvolvimento e Framework de Testes
Gabarito: letra E. A abordagem descrita — código desenvolvido em incrementos muito pequenos, com testes executados a cada adição ou refatoração, passando apenas após o teste — é o Test-Driven Development (TDD). O framework popular para testes automatizados em Java é o JUnit, amplamente usado para testes unitários.
A questão é direta: o enunciado menciona "o código é desenvolvido de forma incremental, em conjunto com o teste para esse incremento, de forma que só se passa para o próximo incremento quando o atual passar no teste". Isso é a essência do TDD (ciclo vermelho-verde-refatora). E, para Java, o framework padrão para testes automatizados é o JUnit.
TDD (Test-Driven Development)
1Ciclo
Vermelho (escreve teste que falha)
Verde (código mínimo para passar)
Refatora (melhora o código)
2Características
Incrementos muito pequenos
Só avança após teste passar
Testes a cada adição/refatoração
3Framework Java
JUnit (testes unitários)
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Behavior-Driven Development (BDD) foca no comportamento do sistema a partir de cenários escritos em linguagem natural, não no ciclo de teste incremental antes da codificação. JTest não é um framework popular para Java; o correto é JUnit.
Alternativa B — ❌ Incorreta
Extreme Programming (XP) é uma metodologia ágil que pode incluir TDD, mas o enunciado descreve especificamente a prática de teste antes do código, que é TDD, não XP em si. Além disso, Selenium é para testes de interface web, não para testes unitários em Java.
Alternativa C — ❌ Incorreta
Test-Driven Development está correto quanto à abordagem, mas Jenkins é uma ferramenta de integração contínua (CI), não um framework de testes automatizados. O framework correto é JUnit.
Alternativa D — ❌ Incorreta
Data-Driven Development and Test não é uma abordagem consagrada no desenvolvimento ágil. Embora JUnit seja correto, a primeira parte está errada.
Alternativa E — ✅ Correta ⟵ GABARITO
Test-Driven Development e JUnit são exatamente o que o enunciado descreve: desenvolvimento orientado a testes com um framework de testes automatizados para Java.