A integração contínua é uma prática de desenvolvimento de software que reconstrói e testa completamente a aplicação -
idealmente, toda vez que uma alteração for feita. Esta abordagem oferece muitas vantagens, como indicado no Concept: Integração Contínua.
Passos básicos
A aplicação detalhada da integração contínua depende das ferramentas que você usa (sistema de gestão de configuração,
ferramenta automatizada de construção, ferramenta automatizada de teste, etc.). Entretanto, estes são os passos
básicos:
-
Uma desenvolvedora, vamos chamá-la de Joana, seleciona um item de trabalho para executar.
-
Joana atualiza sua área de trabalho para incluir as Implementação
mais recentes a partir do espaço de trabalho de integração.
-
Joana faz mudanças na sua área de trabalho tanto para seus testes de desenvolvedor quanto para a implementação e,
então, ela testa as mudanças.
-
Antes de submeter as mudanças, Joana atualiza sua área de trabalho novamente (porque outros desenvolvedores podem
ter submetido alterações conflitantes) e reexecuta seus testes de desenvolvedor.
-
Se estes testes forem bem sucedidos, as mudanças são promovidas para o espaço de trabalho de integração.
-
Uma Construção completa da aplicação é realizada usando a implementação que está no
espaço de trabalho de integração de trabalho, e todo o conjunto de testes de desenvolvedor é executado nesta
construção.
-
Se algum desses testes falhar, a equipe será notificada, e a falha deve ser corrigida o mais rápido possível.
-
Esse processo se repete enquanto a equipe desenvolve, integra e testa continuamente a funcionalidade em pequenos
incrementos.
Restrições
Conceitualmente, a integração contínua pode ser feita manualmente. Entretanto, na prática, existem várias restrições
que devem ser respeitadas para que ela seja eficaz:
-
Todas as alterações devem ser feitas em uma configuração testada que você saiba que esteja boa.
-
O ciclo integrar-construir-testar deve ser concluído rapidamente e a equipe deve ser notificada sobre os
resultados. Muitas diretrizes publicadas indicam um ciclo de 10 minutos.
-
Mantenha o conjunto de mudanças o menor possível de forma que o trabalho possa ser concluído e a integração
realizada várias vezes por dia. Muitas diretrizes publicadas indicam um ciclo de 2 a 4 horas entre as integrações.
Essas restrições implicam a necessidade de um repositório de gestão de configuração (CM) para manter as informações
sobre configuração (passo 1 enumerado anteriormente), ferramentas automatizadas de construção e teste para atender as
restrições de reconstrução (passo 2) e bom planejamento e disciplina dos desenvolvedores para garantir que os seus
itens de trabalho e conjuntos de mudança sejam pequenos o suficiente para serem concluídos rapidamente (passo 3).
|