Pular para o conteúdo principal

Questão de Programação — Frameworks Java — CESPE / CEBRASPE 2024

ProgramaçãoFrameworks Java
Código
ce186302
Banca
CESPE / CEBRASPE
Órgão
STJ
Ano
2024
Nível
Superior
Cargo
Analista Judiciário - Área: Apoio Especializado - Especialidade: Análises de Sistemas de Informação
Acerca de criptografia, de clean code, de refactoring e de JUnit, julgue o item seguinte.
No JUnit, a anotação @EnabledOnOs permite que testes sejam executados em qualquer sistema operacional, garantindo que todas as funcionalidades sejam testadas uniformemente em diferentes plataformas.
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoE — Errado

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”.

JUnit – Anotação @EnabledOnOs

Gabarito: ❌ ERRADO. A afirmação está incorreta porque a anotação @EnabledOnOs, do JUnit 5, NÃO permite que testes sejam executados em qualquer sistema operacional; ao contrário, ela restringe a execução apenas aos sistemas especificados em seus argumentos. A banca inverteu o propósito da anotação.

O que a @EnabledOnOs realmente faz?

O JUnit 5 fornece um conjunto de anotações condicionais para controlar quando um teste deve ser executado com base em condições do ambiente. A @EnabledOnOs é usada para habilitar um teste apenas em determinados sistemas operacionais. Por exemplo:

@EnabledOnOs(OS.WINDOWS)
void testSoWindows() { /* executa só no Windows */ }

Se você quer que o teste rode em qualquer SO, simplesmente não use @EnabledOnOs — ou use @DisabledOnOs com os SOs que deseja excluir. A ideia é justamente o oposto do que a assertiva diz: em vez de garantir uniformidade, ela permite ignorar testes em SOs onde não fazem sentido.

PEGA ESSA DICA!

No JUnit 5, anotações condicionais como @EnabledOnOs, @DisabledOnOs, @EnabledIf, @DisabledIf servem para restringir a execução. Memorize: toda anotação que começa com @Enabled só ativa o teste se a condição for verdadeira; @Disabled faz o contrário.

Análise da assertiva

A frase diz: "a anotação @EnabledOnOs permite que testes sejam executados em qualquer sistema operacional". Isso é falso. Ela só permite execução nos SOs listados. A segunda parte — "garantindo que todas as funcionalidades sejam testadas uniformemente em diferentes plataformas" — também é incorreta, pois a anotação não garante uniformidade; ela cria testes específicos por plataforma.

Gabarito: ❌ ERRADO.

Link permanente: /questoes/ce186302