Raciocínio Lógico Múltipla Escolha

Você testa um sistema cujo ciclo de vida é modelado pelo diagrama de transição de estado abaixo. O sistema começa no estado INIT e termina sua operação no estado OFF. Qual é o número MÍNIMO de casos de teste para obter uma cobertura de transições válida?

Você testa um sistema cujo ciclo de vida é modelado pelo diagrama de transição de estado abaixo. O sistema começa no estado INIT e termina sua operação no estado OFF. Qual é o número MÍNIMO de casos de teste para obter uma cobertura de transições válida?

  1. 3
  2. 3
  3. 4
  4. 2
  5. 7

Resolução completa

Explicação passo a passo

A
Alternativa A

Alternativa A

A questão aborda o teste de software utilizando Diagrams de Transição de Estados, especificamente o critério de Cobertura de Transições. O objetivo é encontrar o menor número de caminhos (casos de teste) que permitam executar todas as setas (transições) do diagrama, partindo do estado inicial e chegando ao final.

Análise do Diagrama:

O sistema possui 5 estados e 7 transições distintas que precisam ser cobertas:

  1. INIT \rightarrow DEBUG MODE (evento: test)
  2. INIT \rightarrow IN OPERATION (evento: run)
  3. IN OPERATION \rightarrow DEBUG MODE (evento: error)
  4. IN OPERATION \rightarrow ON HOLD (evento: pause)
  5. ON HOLD \rightarrow IN OPERATION (evento: resume)
  6. DEBUG MODE \rightarrow OFF (evento: done)
  7. ON HOLD \rightarrow OFF (evento: done)

Construção dos Casos de Teste:

Para minimizar o número de testes, devemos agrupar transições em caminhos válidos do estado INIT ao estado OFF.

  • Caso de Teste 1 (Ramo test):
    O sistema inicia e vai diretamente para modo de depuração.
    Caminho: INIT \xrightarrow{test} DEBUG MODE \xrightarrow{done} OFF.
    Cobre as transições: test e done (do DEBUG).
  • Caso de Teste 2 (Ramo run com pause e done_hold):
    O sistema opera, pausa e desliga.
    Caminho: INIT \xrightarrow{run} IN OPERATION \xrightarrow{pause} ON HOLD \xrightarrow{done} OFF.
    Cobre as transições: run, pause e done (do HOLD).
  • Caso de Teste 3 (Ramo run com pause, resume e error):
    O sistema opera, pausa, retoma e encontra erro, indo para depuração e desligando.
    Caminho: INIT \xrightarrow{run} IN OPERATION \xrightarrow{pause} ON HOLD \xrightarrow{resume} IN OPERATION \xrightarrow{error} DEBUG MODE \xrightarrow{done} OFF.
    Cobre as transições: run, pause, resume, error e done (do DEBUG).

Verificação de Cobertura:
Ao unir os três caminhos acima, verificamos que todas as 7 transições listadas foram percorridas pelo menos uma vez. Não é possível realizar essa cobertura com apenas 2 caminhos, pois existem ramificações críticas (como done_hold vs resume e error) que exigem destinos finais distintos ou fluxos cíclicos que não podem ser completados simultaneamente em um único trajeto linear.

Portanto, o número mínimo de casos de teste é 3.

Alternativa A.

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Raciocínio Lógico

Ver mais Raciocínio Lógico resolvidas

Tem outra questão de Raciocínio Lógico?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.