Questão de Engenharia de Software — SonarQube — CESPE / CEBRASPE 2025
- Código
- ce417732
- Banca
- CESPE / CEBRASPE
- Órgão
- PC DF
- Ano
- 2025
- Cargo
- GAAPC ( )
- CCerto
- EErrado
GabaritoE — Errado
❌ ERRADO. O SonarQube não tem como princípio "formatar" o código da base em produção; ele é uma ferramenta de análise estática que inspeciona o código-fonte em busca de problemas como bugs, vulnerabilidades, code smells e débito técnico, sem executar o programa. A formatação e a revisão para garantir o uso apropriado de APIs e recursos de linguagem não são o foco central da ferramenta — essa descrição se aproxima mais de práticas de revisão de código e de boas práticas de programação, não do papel do SonarQube.
O SonarQube é uma plataforma de código aberto amplamente utilizada para qualidade contínua de código. Ele realiza a análise estática do código-fonte, identificando problemas que podem comprometer a manutenibilidade, a segurança e a confiabilidade do software. A ferramenta aplica um conjunto de regras (como as do SonarWay) que detectam desde bugs potenciais até más práticas de programação, gerando métricas como cobertura de testes, duplicação de código e o chamado débito técnico — uma estimativa do esforço necessário para corrigir os problemas encontrados.
A análise estática é uma técnica que examina o código sem executá-lo, diferentemente dos testes dinâmicos. Ela é uma das etapas do pipeline de DevSecOps, sendo classificada como SAST (Static Application Security Testing), que identifica vulnerabilidades como injeção SQL, XSS e uso de bibliotecas vulneráveis diretamente no código-fonte. O SonarQube se encaixa exatamente nessa categoria, ao lado de ferramentas como Checkmarx e Veracode.
A afirmação do enunciado mistura conceitos: a formatação do código é uma prática de estilo (como indentação e organização), e a revisão para garantir o uso apropriado de APIs e recursos de linguagem é uma atividade de code review ou de adoção de boas práticas de programação. O SonarQube, por sua vez, analisa o código em busca de problemas, mas não tem como princípio "formatar" a base de produção nem "revisar" manualmente o uso de APIs — ele automatiza a detecção de problemas, mas a correção e a formatação ficam a cargo dos desenvolvedores.
A pegadinha da banca está em atribuir ao SonarQube uma função que não é a sua principal: a ferramenta não "formata" nem "revisa" o código no sentido de garantir o uso apropriado de interfaces de programação. Ela detecta problemas de qualidade e segurança, mas a decisão de como corrigir e a aplicação de boas práticas de codificação são responsabilidades da equipe de desenvolvimento. O princípio do SonarQube é a inspeção automatizada do código, não a formatação ou a revisão manual.
A banca tenta confundir o papel do SonarQube com o de práticas de code review e formatação de código. O SonarQube analisa o código estaticamente, identificando problemas; ele não "formata" nem "revisa" manualmente o uso de APIs. A pegadinha está em atribuir à ferramenta uma função que não é a sua essência — a inspeção automatizada em busca de bugs, vulnerabilidades e débito técnico.
A afirmação está errada porque descreve o SonarQube como uma ferramenta que "formata" e "revisa" o código para garantir o uso apropriado de APIs e recursos de linguagem. Essa não é a função principal do SonarQube. A ferramenta realiza análise estática do código-fonte, identificando problemas de qualidade, segurança e manutenibilidade, mas não atua na formatação do código nem na revisão manual do uso de interfaces de programação. A descrição se aproxima mais de práticas de code review e de boas práticas de programação, que são atividades humanas, não automatizadas pelo SonarQube.
Gabarito: letra E (ERRADO).
Link permanente: /questoes/ce417732