Pular para o conteúdo principal

Questão de Engenharia de Software — Desenvolvimento de Software — CESPE / CEBRASPE 2024

Engenharia de SoftwareDesenvolvimento de Software
Código
ce190485
Banca
CESPE / CEBRASPE
Órgão
TSE
Ano
2024
Nível
Superior
Cargo
Analista Judiciário – Área: Apoio Especializado – Especialidade: Tecnologia da Informação
No que concerne à qualidade do código e de sistemas e à abordagem DevOps, julgue o item subsequente. Um defeito como a complexidade excessiva do código pode, em princípio, ser encontrado com maior facilidade e com menores custos a partir da utilização de testes estáticos.
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoC — Certo

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

Qualidade de Código: Testes Estáticos vs. Dinâmicos

✅ CERTO. A afirmação está correta. Defeitos de complexidade excessiva do código são intrínsecos à estrutura do software e, portanto, mais facilmente identificados por testes estáticos (revisões de código, inspeções, análise estática com ferramentas) do que por testes dinâmicos, que executam o código e focam no comportamento.

Os testes estáticos atuam diretamente sobre o código-fonte, medindo métricas como complexidade ciclomática, acoplamento e coesão. Eles são aplicados nas fases iniciais do desenvolvimento ("shift-left"), reduzindo drasticamente o custo de correção — princípio consagrado na Engenharia de Software: quanto antes o defeito é encontrado, menor o custo.

Já os testes dinâmicos (execução do software) são mais adequados para detectar defeitos de lógica, tempo de resposta ou falhas em tempo de execução, mas não são eficientes para avaliar a complexidade estrutural do código.

No contexto DevOps, a integração de ferramentas de análise estática na pipeline de CI/CD (por exemplo, SonarQube, Checkstyle) permite detectar automaticamente complexidade excessiva, promovendo qualidade contínua com baixo custo.

PEGA ESSA DICA!

A banca explora a confusão entre tipos de teste. Lembre-se: defeitos estruturais (complexidade, duplicação, más práticas) são alvo de testes estáticos; defeitos comportamentais (funcionalidade, desempenho) são alvo de testes dinâmicos. Na dúvida, pergunte: "é possível encontrar isso sem executar o código?" Se sim, o teste estático é o caminho.

CERTO.

Link permanente: /questoes/ce190485