Questão de Engenharia de Software — Desenvolvimento de Software — CESPE / CEBRASPE 2024
Engenharia de Software›Desenvolvimento de Software
Código
ce185249
Banca
CESPE / CEBRASPE
Órgão
SEBRAE-NACIONAL
Ano
2024
Nível
Superior
Cargo
Analista Técnico II – Desenvolvimento Software
Certa empresa de TI está implementando um pipeline de CI/CD para o desenvolvimento de um aplicativo web. Durante a fase de integração contínua, falhas são frequentemente identificadas nos testes automatizados devido a inconsistências no ambiente de desenvolvimento.Nesse caso, a prática mais indicada para resolver o problema apresentado é
Areduzir o número de testes automatizados para diminuir a complexidade.
Bexecutar os testes manualmente para garantir a precisão.
Caumentar a frequência dos commits para identificar rapidamente os erros.
Dutilizar contêineres para padronizar o ambiente de desenvolvimento.
Revelar gabarito e comentário▾
GabaritoD — utilizar contêineres para padronizar o ambiente de desenvolvimento.
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”.
CI/CD – Inconsistências no Ambiente de Desenvolvimento
Gabarito: letra D. O problema descrito é a ocorrência de falhas em testes automatizados devido a inconsistências no ambiente de desenvolvimento. A prática mais indicada é padronizar o ambiente, garantindo que desenvolvimento, teste e produção sejam idênticos. O uso de contêineres (ex.: Docker) permite empacotar todas as dependências do software, eliminando as diferenças entre ambientes. As demais alternativas não tratam a causa-raiz do problema.
1Problema: ambiente inconsistente
2Causa: diferenças entre dev/test/prod
3Solução: contêineres (Docker)
4Resultado: ambiente padronizado e reprodutível
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Reduzir o número de testes automatizados diminui a cobertura e a qualidade do software, não solucionando as inconsistências de ambiente. A abordagem correta é manter a automação e padronizar o ambiente.
Alternativa B — ❌ Incorreta
Executar testes manualmente é mais lento, propenso a erros e vai contra os princípios de CI/CD, que prezam pela automação contínua. A questão é de ambiente, não de método de teste.
Alternativa C — ❌ Incorreta
Aumentar a frequência de commits acelera a detecção de erros, mas não resolve inconsistências de ambiente. Sem padronização, os testes continuarão falhando por causas ambientais.
Alternativa D — ✅ Correta ⟵ GABARITO
Utilizar contêineres (como Docker) para criar ambientes padronizados e reprodutíveis é a prática recomendada. Com isso, cada execução do pipeline de CI/CD usa o mesmo ambiente, eliminando as inconsistências que geravam falhas nos testes automatizados.
PEGA ESSA DICA!
Em questões sobre CI/CD, lembre-se de que contêineres são a ferramenta padrão para garantir consistência entre desenvolvimento, teste e produção. Eles encapsulam o sistema operacional, bibliotecas e dependências, garantindo que o código se comporte igual em qualquer lugar.