Pular para o conteúdo principal

Questão de Engenharia de Software — Teste de Software — FCC 2015

Engenharia de SoftwareTeste 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,
  1. ABehavior-Driven Development e JTest.
  2. BExtreme Programming e Selenium.
  3. CTest-Driven Development e Jenkins.
  4. DData-Driven Development and Test e JUnit.
  5. 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.

Gabarito: letra E.

Link permanente: /questoes/fc025879