Julgue o item a seguir, a respeito de conceitos, prática e f...

Próximas questões
Com base no mesmo assunto
Q2464524 Engenharia de Software

Julgue o item a seguir, a respeito de conceitos, prática e ferramentas relativos a DevOps e de integração contínua.  


Para uma integração contínua efetiva, um dos princípios recomendados é realizar o teste dos builds no ambiente de produção no qual o sistema final será executado.

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta é E - errado.

Vamos entender por que a resposta correta é "errado" e explorar o tema da questão, que aborda integração contínua dentro do contexto de DevOps.

A integração contínua (CI) é uma prática de desenvolvimento de software onde os desenvolvedores frequentemente integram seu código ao repositório compartilhado várias vezes ao dia. Cada integração é verificada por meio de builds automáticos e testes para detectar erros rapidamente.

Um dos princípios fundamentais da integração contínua é a automação de testes e builds em um ambiente de integração que simula o ambiente de produção, mas que não é o ambiente de produção em si. Isso é crucial para garantir que o código esteja funcionando conforme esperado antes de ser lançado para o ambiente de produção.

A afirmação da questão sugere que "um dos princípios recomendados é realizar o teste dos builds no ambiente de produção". Isso está errado por vários motivos:

  • Risco de Interrupção: Testar builds diretamente no ambiente de produção pode causar interrupções no serviço oferecido aos usuários finais.
  • Segurança: Pode expor vulnerabilidades e dados sensíveis a possíveis falhas durante os testes.
  • Práticas Recomendadas: As boas práticas de DevOps e CI recomendam testar em ambientes de desenvolvimento, integração e homologação antes de qualquer coisa ser movida para produção.

Assim, a alternativa correta é "E - errado", pois a prática recomendada é testar builds em ambientes simulados e controlados antes de qualquer lançamento ou teste no ambiente de produção. Seguindo essas boas práticas, garante-se maior estabilidade e segurança no processo de desenvolvimento e entrega de software.

Espero que esta explicação tenha esclarecido suas dúvidas sobre o tema e ajudado a entender melhor a lógica por trás da integração contínua e das boas práticas em DevOps. Se precisar de mais detalhes ou tiver outras dúvidas, estarei à disposição para ajudar!

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Testar em produção??? Não!

Errado. Para uma integração contínua eficaz, é recomendado realizar testes em ambientes o mais próximo possível do ambiente de produção, mas não diretamente no ambiente de produção

Isso porque testar diretamente no ambiente de produção pode expor o sistema a riscos desnecessários e afetar a disponibilidade e a estabilidade do sistema para os usuários finais. Em vez disso, os testes devem ser realizados em ambientes de teste dedicados que reproduzam fielmente as características do ambiente de produção.

Fonte: ChatGPT

A afirmação está incorreta. Para uma integração contínua (CI) efetiva, o princípio recomendado é realizar testes dos builds em um ambiente que seja **semelhante** ao ambiente de produção, não necessariamente no próprio ambiente de produção.

Aqui está uma explicação mais detalhada:

- **Ambiente de Teste Semelhante ao de Produção**: Durante a fase de integração contínua, é fundamental testar os builds em um ambiente de teste que imite o ambiente de produção. Isso ajuda a identificar e corrigir problemas antes de implantar a aplicação em produção, minimizando riscos.

- **Ambiente de Produção**: O ambiente de produção é onde a aplicação final é executada para os usuários finais. Realizar testes diretamente neste ambiente pode introduzir riscos, como a possibilidade de afetar a disponibilidade e a performance do serviço oferecido aos usuários.

Portanto, a prática recomendada é usar um ambiente de teste ou staging que replique o ambiente de produção, garantindo que os builds sejam testados em condições o mais próximas possível daquelas encontradas em produção. Isso ajuda a assegurar que o sistema funcionará corretamente quando for finalmente implantado.

Minha duvida é apenas como a canary entra nesse contexto. Semelhante a produção ou igual a produção. Outra coisa que fico curioso é quanto a deploy gradativo. Deploy gradativo acaba sendo um deploy um teste em produção. Pelo menos na minha visão

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo