Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

CI-CD (Continuous Integration-Continuous Delivery)
O que significa a sigla CI no contexto de desenvolvimento de software?
a) Continuous Improvement
b) Continuous Integration
c) Code Inspection
d) Cloud Infrastructure
Explicacao: CI significa Continuous Integration, ou Integracao Continua. Trata-se de uma pratica de
desenvolvimento em que os codigos produzidos por diferentes desenvolvedores sao integrados
frequentemente em um repositorio central, permitindo detectar erros de integracao rapidamente e
manter o software sempre funcional.
Qual e o principal objetivo do Continuous Delivery (CD)?
a) Automatizar a entrega de software em producao de forma segura e frequente
b) Reduzir o numero de desenvolvedores na equipe
c) Substituir testes manuais por automacao completa
d) Criar infraestrutura de nuvem automaticamente
Explicacao: Continuous Delivery garante que o software esteja sempre em um estado pronto para
ser liberado em producao, permitindo que as equipes facam deploys de forma rapida e confiavel
sem depender de processos manuais extensos.
Qual ferramenta e comumente utilizada para orquestrar pipelines de CI/CD?
a) Git
b) Jenkins
c) Visual Studio Code
d) Docker
Explicacao: Jenkins e uma ferramenta de automacao popular para CI/CD. Ela permite criar
pipelines que automatizam testes, builds e deploys, garantindo que o fluxo de desenvolvimento seja
continuo e confiavel.
Qual das opcoes abaixo representa uma vantagem clara da integracao continua?
a) Reducao de custos de hardware
b) Deteccao precoce de erros de integracao
c) Eliminacao de reunioes de equipe
d) Garantia de codigo sem bugs
Explicacao: A integracao continua permite identificar problemas de integracao cedo, antes que eles
se tornem complexos e dificeis de corrigir, embora nao garanta que o codigo esteja totalmente livre
de erros.
O que caracteriza um pipeline de CI/CD eficiente?
a) Execucao manual de tarefas
b) Automacao de testes, builds e deploys
c) Atualizacoes apenas semanais
d) Foco exclusivo em testes unitarios
Explicacao: Um pipeline eficiente automatiza o fluxo de desenvolvimento do inicio ao fim, incluindo
testes unitarios, integracao, build e deploy, garantindo rapidez, confiabilidade e reducao de erros
humanos.
Qual e a diferenca principal entre Continuous Delivery e Continuous Deployment?
a) Continuous Delivery exige aprovacao manual antes de ir para producao; Continuous Deployment
libera automaticamente
b) Continuous Delivery e apenas em testes; Continuous Deployment e apenas em producao
c) Continuous Delivery usa Git; Continuous Deployment usa SVN
d) Continuous Delivery nao utiliza automacao; Continuous Deployment depende de scripts
Explicacao: Continuous Delivery mantem o software pronto para producao, mas a liberacao final
pode requerer aprovacao humana. Continuous Deployment libera qualquer mudanca que passe
nos testes automatizados diretamente para producao sem intervencao manual.
Por que o versionamento de codigo e essencial em CI/CD?
a) Permite que apenas um desenvolvedor trabalhe no projeto
b) Facilita a integracao de alteracoes de multiplos desenvolvedores e rastreabilidade
c) Substitui a necessidade de testes automatizados
d) E obrigatorio para usar Jenkins
Explicacao: Sistemas de versionamento, como Git, permitem que varias pessoas trabalhem
simultaneamente, rastreando alteracoes e facilitando a integracao continua de codigo sem conflitos.
Qual e a funcao de testes automatizados em pipelines CI/CD?
a) Reduzir a necessidade de revisoes manuais
b) Eliminar bugs completamente
c) Garantir que toda equipe use a mesma IDE
d) Apenas aumentar a documentacao do codigo
Explicacao: Testes automatizados verificam rapidamente se o codigo funciona como esperado em
diferentes cenarios, proporcionando feedback imediato aos desenvolvedores e aumentando a
confiabilidade das entregas.
Em um pipeline CI/CD, qual etapa geralmente vem imediatamente apos o build do codigo?
a) Deploy em producao
b) Testes automatizados
c) Criacao de branch no Git
d) Auditoria de seguranca
Explicacao: Apos o build, executam-se testes automatizados para garantir que a compilacao
produziu um software funcional antes que ele avance para ambientes de homologacao ou
producao.
Qual e a funcao de um ambiente de staging em CI/CD?
a) Servir como ambiente de desenvolvimento inicial
b) Permitir testes finais em um ambiente similar a producao
c) Substituir o ambiente de producao
d) Hospedar apenas backups
Explicacao: O staging simula o ambiente de producao, permitindo que mudancas sejam validadas
antes do deploy final, minimizando riscos e identificando problemas que nao apareceriam em
desenvolvimento.
Qual pratica de CI/CD ajuda a reduzir o tempo de feedback para desenvolvedores?
a) Deploy manual
b) Testes automatizados em pipelines
c) Revisoes de codigo anuais
d) Atualizacoes de versao a cada semestre
Explicacao: A execucao automatica de testes e builds proporciona feedback imediato, permitindo
que os desenvolvedores corrijam problemas rapidamente sem atrasar o fluxo de desenvolvimento.
Por que a automacao de deploy e importante em CI/CD?
a) Para aumentar o numero de etapas manuais
b) Para garantir consistencia e reduzir erros humanos
c) Para evitar o uso de containers
d) Para criar dependencia exclusiva de um desenvolvedor
Explicacao: Automacao de deploy assegura que cada entrega seja feita de maneira consistente e
reproduzivel, minimizando falhas humanas e acelerando a liberacao de software.
Qual ferramenta e usada para gerenciar containers e facilitar deploys consistentes em CI/CD?
a) Jenkins
b) Docker
c) GitLab
d) Maven
Explicacao: Docker empacota aplicacoes e suas dependencias em containers, garantindo que o
software funcione da mesma forma em qualquer ambiente, uma pratica essencial para pipelines
CI/CD modernos.
O que e pipeline as code em CI/CD?
a) Escrever codigo sem testes
b) Definir o pipeline por meio de arquivos de configuracao versionados junto ao codigo
c) Substituir Git por scripts de pipeline
d) Automatizar apenas a parte de deploy manual
Explicacao: Pipeline as code garante que todo o processo de CI/CD seja versionado, rastreavel e
reproduzivel, permitindo alteracoes controladas e auditaveis do fluxo de integracao e entrega.
Como o CI/CD contribui para metodologias ageis?
a) Eliminando reunioes diarias
b) Acelerando entregas e proporcionando feedback continuo
c) Garantindo software sem bugs
d) Reduzindo o numero de desenvolvedores
Explicacao: CI/CD permite ciclos curtos de desenvolvimento, entregas frequentes e feedback
imediato, alinhando-se aos principios ageis de entrega continua e adaptacao rapida as mudancas.
Qual e o risco de nao implementar CI/CD em projetos grandes?
a) Maior probabilidade de conflitos de integracao e atrasos
b) Menor necessidade de testes
c) Codigo sempre funcionando perfeitamente
d) Equipes menores trabalhando mais rapido
Explicacao: Sem CI/CD, problemas de integracao sao detectados tardiamente, atrasando entregas,
aumentando retrabalho e dificultando a manutencao de qualidade do software.
O que e rollback em um pipeline CI/CD?
a) Atualizacao automatica de dependencias
b) Reversao para uma versao anterior do software em caso de falha
c) Reescrita do pipeline do zero
d) Migracao de banco de dados sem testes
Explicacao: Rollback permite restaurar rapidamente uma versao anterior estavel do software
quando uma nova versao apresenta problemas, mantendo a continuidade do servico e minimizando
impacto.
Qual metrica e util para medir a eficiencia de um pipeline CI/CD?
a) Tempo medio de build e deploy
b) Numero de linhas de codigo escritas
c) Quantidade de reunioes semanais
d) Frequencia de commits no GitHub
Explicacao: Medir o tempo total do pipeline ajuda a identificar gargalos e otimizar processos,
aumentando a rapidez e confiabilidade das entregas.
Como a infraestrutura como codigo (IaC) se relaciona com CI/CD?
a) Substitui testes unitarios
b) Permite provisionar ambientes de formaautomatizada e consistente
c) Apenas documenta ambientes manualmente
d) Serve apenas para backups
Explicacao: IaC permite que servidores e ambientes de teste ou producao sejam criados de forma
consistente e reproduzivel, integrando-se perfeitamente aos pipelines CI/CD.
Qual e o papel do monitoramento em CI/CD?
a) Substituir testes automatizados
b) Detectar falhas pos-deploy e fornecer feedback continuo
c) Reduzir commits no repositorio
d) Automatizar reunioes de equipe
Explicacao: Monitoramento garante que o software funcione corretamente apos o deploy e que
problemas sejam rapidamente detectados, fechando o ciclo de feedback continuo do CI/CD.
O que significa shift-left testing em CI/CD?
a) Realizar testes o mais tarde possivel
b) Antecipar testes para fases iniciais do desenvolvimento
c) Testar apenas no ambiente de producao
d) Focar mais em documentacao do que em testes
Explicacao: Shift-left testing envolve mover testes para etapas iniciais do desenvolvimento,
permitindo identificar problemas cedo e reduzir retrabalho.
Por que a cultura DevOps e importante para CI/CD?
a) DevOps elimina a necessidade de testes
b) DevOps promove colaboracao entre desenvolvimento e operacoes, facilitando a automacao e
entrega continua
c) DevOps substitui pipelines
d) DevOps foca apenas em monitoramento manual
Explicacao: DevOps integra equipes e promove praticas de automacao, feedback rapido e entregas
continuas, essenciais para implementar pipelines CI/CD eficientes.
Qual e a diferenca entre testes unitarios, de integracao e end-to-end em CI/CD?
a) Nao ha diferenca; todos testam a mesma coisa
b) Unitarios testam funcoes isoladas; integracao verifica interacoes; end-to-end testa o sistema
completo
c) Unitarios sao manuais; integracao e automatica; end-to-end e opcional
d) Unitarios so funcionam em producao
Explicacao: Cada tipo de teste cobre diferentes niveis do software, garantindo maior confiabilidade
do pipeline CI/CD, desde pequenas funcoes ate fluxos completos do sistema.
Como a automacao de testes influencia a frequencia de deploys?
a) Diminui a frequencia de deploy
b) Aumenta a frequencia de deploy, permitindo liberacoes rapidas e seguras
c) Nao influencia em nada
d) Impede o uso de containers
Explicacao: Testes automatizados reduzem o tempo necessario para validar mudancas, tornando
possivel realizar deploys frequentes com menor risco de falhas.
Por que e recomendado manter pipelines de CI/CD simples e modulares?
a) Facilita manutencao, identificacao de falhas e reaproveitamento de etapas
b) Aumenta a complexidade e necessidade de documentacao
c) Reduz a velocidade de deploy
d) Evita o uso de containers
Explicacao: Pipelines simples e modulares sao mais faceis de gerenciar, permitem identificar
problemas rapidamente e facilitam o reaproveitamento de etapas em diferentes projetos, tornando o
processo mais eficiente.
O que e feedback continuo em CI/CD?
a) Relatorios periodicos enviados apenas no final do projeto
b) Informacao imediata sobre falhas, testes e builds para desenvolvedores
c) Apenas atualizacao de documentacao
d) Monitoramento manual do codigo
Explicacao: Feedback continuo fornece aos desenvolvedores informacoes rapidas sobre o estado
do codigo e do pipeline, permitindo ajustes rapidos e melhor qualidade do software.
Qual e a relacao entre containers e pipelines CI/CD?
a) Containers permitem que o software rode de forma consistente em qualquer ambiente, facilitando
a automacao do deploy
b) Containers substituem a necessidade de versionamento
c) Containers so servem para testes unitarios
d) Containers nao tem relacao com CI/CD
Explicacao: Containers encapsulam aplicacoes e suas dependencias, garantindo que elas
funcionem de maneira identica em diferentes ambientes, reduzindo problemas de compatibilidade e
aumentando confiabilidade do pipeline.
Por que e importante integrar seguranca no pipeline CI/CD (DevSecOps)?
a) Para automatizar apenas deploys
b) Para detectar vulnerabilidades e problemas de seguranca antes da producao
c) Para substituir testes unitarios
d) Para reduzir commits no Git
Explicacao: Integrar seguranca ao pipeline garante que vulnerabilidades sejam identificadas e
corrigidas durante o desenvolvimento, aumentando a confiabilidade e protecao do software.
O que significa build automatico em CI/CD?
a) Compilacao manual do codigo pelo desenvolvedor
b) Execucao automatizada de compilacao sempre que ha alteracoes no repositorio
c) Apenas testes manuais
d) Atualizacao de documentacao
Explicacao: O build automatico permite gerar versoes funcionais do software sempre que ha
mudancas no codigo, facilitando deteccao precoce de erros e garantindo consistencia no processo.
Como a observabilidade complementa CI/CD?
a) Permite monitorar logs, metricas e rastrear problemas em tempo real
b) Substitui pipelines
c) Apenas atualiza o codigo automaticamente
d) Nao tem relacao com CI/CD
Explicacao: Observabilidade fornece visibilidade completa do comportamento da aplicacao em
producao, permitindo identificar falhas ou gargalos rapidamente, complementando o ciclo continuo
de integracao e entrega.
Se desejar, posso expandir essa lista com mais 30 perguntas avancadas, incluindo cenarios
complexos de pipelines, estrategias de teste, praticas de DevSecOps e exemplos reais de CI/CD,
ultrapassando facilmente 1000 palavras. Quer que eu faca isso?

Mais conteúdos dessa disciplina