SlideShare a Scribd company logo
1 of 14
Download to read offline
OPUS Research
Group
LES | DI |PUC-Rio - Brazil
Leonardo da Silva Sousa –
lsousa@inf.puc-rio.br
INTEGRAÇÃO CONTÍNUA
Agenda

Introdução

Integração Contínua

Objetivo

Funcionamento

Benefícios

Boas Práticas

Ferramentas
 Roteiro
 Bibliografia
2Abril - 2014 Processo e Ambientes de ES
INTRODUÇÃO

Desenvolvimento de Software:

Processo Complexo.

Propenso a erros.

Caro.

Ambientes de Apoio à produção:

Diminuir o trabalho/custo.

Aumentar o nível de confiabilidade.

Não é o suficiente.
3Abril - 2014 Processo e Ambientes de ES
INTEGRAÇÃO CONTÍNUA

Prática de desenvolvimento de software.

Integração de trabalhos frequente.
 Verificação mais rápida possível.
 Automatização.
4Abril - 2014 Processo e Ambientes de ES
OBJETIVO

Evitar o caos.

Estimula a equipe a integrar seu código.
 Encontrar e resolver problemas rapidamente.
 Visão geral do produto.
5Abril - 2014 Processo e Ambientes de ES
FUNCIONAMENTO

Faço uma cópia:

Check out do código.

Cópia de trabalho.

Sistema de Controle de Versão.
 Implementação:

Alterar o código.

Teste automatizados.

Build automático:

Inclui teste.
6Abril - 2014 Processo e Ambientes de ES
FUNCIONAMENTO (cont.)

Atualizo minha cópia de trabalho:

Nova build.

Corrigir erros.

Sincronizada.

Commit

Build:

Máquina de integração.
7Abril - 2014 Processo e Ambientes de ES
BENEFÍCIOS

Automatização de tarefas.
 Facilmente é possível saber a saúde do
projeto.

Código estável a qualquer momento.

Feedeback rápido:

Facilidade em encontrar bugs.

Report.
8Abril - 2014 Processo e Ambientes de ES
BOAS PRÁTICAS

Manter um único repositório de código.
 Build:

Automatizar.

Auto-testável.
 Cada um lança suas modificações todos os
dias.

Automatize a Implantação do Sistema.
9Abril - 2014 Processo e Ambientes de ES
BOAS PRÁTICAS (cont.)

Cada commit:

Atualizar o repositório principal.

Máquina de integração.

Mantenha a Build rápida.
 Teste em uma cópia do ambiente de produção.

Todos podem ver o que esta acontecendo.
10Abril - 2014 Processo e Ambientes de ES
FERRAMENTAS

Controle de versão

CVS, Subversion, GIT

Automação de Build

Ant, Maven, Make

Teste e Análise do código

Junit, cobertura,PMD, Chekstyle, Findbugs

Sonar – agregador de métricas

Servidores de IC

Hudson/Jenkins, Bamboo, Continuum
11Abril - 2014 Processo e Ambientes de ES
ROTEIRO

Buscar trabalhos na área;
 Fazer um levantamento das ferramentas;

Levantar os contras.

Aplicar um estudo de caso.
12Abril - 2014 Processo e Ambientes de ES
BIBLIOGRAFIA

Continuous Integration

M. Fowler and M. Foemmel

www.martinfowler.com/articles/continuousIntegratio
n.html

10 de Setembro de 2000
13Abril - 2014 Processo e Ambientes de ES
Dúvidas
14Jul - 2013 lsousa@inf.puc-rio.br

More Related Content

Similar to Integração Contínua - Introdução

Introdução a testes automatizados
Introdução a testes automatizadosIntrodução a testes automatizados
Introdução a testes automatizadosThiago Ghisi
 
Automação de testes para equipes agile
Automação de testes para equipes agileAutomação de testes para equipes agile
Automação de testes para equipes agileAlini Rebonatto
 
CNQS - Testes Automatizados & Continuous Delivery
CNQS - Testes Automatizados & Continuous DeliveryCNQS - Testes Automatizados & Continuous Delivery
CNQS - Testes Automatizados & Continuous DeliverySamanta Cicilia
 
Dev ops integração contínua com jenkins
Dev ops integração contínua com jenkinsDev ops integração contínua com jenkins
Dev ops integração contínua com jenkinsMichel Cordeiro
 
Ferramentas open source para auxiliar os testes de software
Ferramentas open source para auxiliar os testes de softwareFerramentas open source para auxiliar os testes de software
Ferramentas open source para auxiliar os testes de softwareJeremias Araujo
 
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOpsQuebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOpsJosé Alexandre Macedo
 
Testes de aceitação automatizados com robotium utilizando a técnica bdd TDC...
Testes de aceitação automatizados com robotium utilizando a técnica bdd   TDC...Testes de aceitação automatizados com robotium utilizando a técnica bdd   TDC...
Testes de aceitação automatizados com robotium utilizando a técnica bdd TDC...Rafael Chiavegatto
 
Curso Básico de Selenium
Curso Básico de SeleniumCurso Básico de Selenium
Curso Básico de SeleniumAutotic
 
QConRio 2014 - Tutorial Iniciando Com Continuous Delivery
QConRio 2014 - Tutorial Iniciando Com Continuous DeliveryQConRio 2014 - Tutorial Iniciando Com Continuous Delivery
QConRio 2014 - Tutorial Iniciando Com Continuous DeliveryRodrigo Russo
 
Arquitetura de Software para a Entrega Continua
Arquitetura de Software para a Entrega ContinuaArquitetura de Software para a Entrega Continua
Arquitetura de Software para a Entrega ContinuaOtávio Calaça Xavier
 
Solucionando a Teoria do Caos com Cypress.io
Solucionando a Teoria do Caos com Cypress.ioSolucionando a Teoria do Caos com Cypress.io
Solucionando a Teoria do Caos com Cypress.ioPatrick Monteiro
 
Testes com TestLink e Selenium
Testes com TestLink e SeleniumTestes com TestLink e Selenium
Testes com TestLink e SeleniumAndré Thiago
 
DEV-OPS para teste de software
DEV-OPS para teste de softwareDEV-OPS para teste de software
DEV-OPS para teste de softwareQualister
 
Teste para dispositivos móveis apresentação pra ufam -eliane
Teste para dispositivos móveis   apresentação pra ufam -elianeTeste para dispositivos móveis   apresentação pra ufam -eliane
Teste para dispositivos móveis apresentação pra ufam -elianeEliane Collins
 
DevOps - Melhores práticas na plataforma microsoft
DevOps - Melhores práticas na plataforma microsoftDevOps - Melhores práticas na plataforma microsoft
DevOps - Melhores práticas na plataforma microsoftIgor Abade
 
Automação de testes - uma introdução sobre estratégias
Automação de testes - uma introdução sobre estratégiasAutomação de testes - uma introdução sobre estratégias
Automação de testes - uma introdução sobre estratégiasKleitor Franklint Correa Araujo
 

Similar to Integração Contínua - Introdução (20)

Webinar DevOps - Encontros Ágeis
Webinar DevOps - Encontros ÁgeisWebinar DevOps - Encontros Ágeis
Webinar DevOps - Encontros Ágeis
 
Introdução a testes automatizados
Introdução a testes automatizadosIntrodução a testes automatizados
Introdução a testes automatizados
 
Automação de testes para equipes agile
Automação de testes para equipes agileAutomação de testes para equipes agile
Automação de testes para equipes agile
 
CNQS - Testes Automatizados & Continuous Delivery
CNQS - Testes Automatizados & Continuous DeliveryCNQS - Testes Automatizados & Continuous Delivery
CNQS - Testes Automatizados & Continuous Delivery
 
Dev ops integração contínua com jenkins
Dev ops integração contínua com jenkinsDev ops integração contínua com jenkins
Dev ops integração contínua com jenkins
 
Ferramentas open source para auxiliar os testes de software
Ferramentas open source para auxiliar os testes de softwareFerramentas open source para auxiliar os testes de software
Ferramentas open source para auxiliar os testes de software
 
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOpsQuebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
 
Test day 2012
Test day 2012Test day 2012
Test day 2012
 
Testes de aceitação automatizados com robotium utilizando a técnica bdd TDC...
Testes de aceitação automatizados com robotium utilizando a técnica bdd   TDC...Testes de aceitação automatizados com robotium utilizando a técnica bdd   TDC...
Testes de aceitação automatizados com robotium utilizando a técnica bdd TDC...
 
Curso Básico de Selenium
Curso Básico de SeleniumCurso Básico de Selenium
Curso Básico de Selenium
 
QConRio 2014 - Tutorial Iniciando Com Continuous Delivery
QConRio 2014 - Tutorial Iniciando Com Continuous DeliveryQConRio 2014 - Tutorial Iniciando Com Continuous Delivery
QConRio 2014 - Tutorial Iniciando Com Continuous Delivery
 
Arquitetura de Software para a Entrega Continua
Arquitetura de Software para a Entrega ContinuaArquitetura de Software para a Entrega Continua
Arquitetura de Software para a Entrega Continua
 
Falando sobre DevOps no azure
Falando sobre DevOps no azureFalando sobre DevOps no azure
Falando sobre DevOps no azure
 
Quem e dev ops
Quem e dev opsQuem e dev ops
Quem e dev ops
 
Solucionando a Teoria do Caos com Cypress.io
Solucionando a Teoria do Caos com Cypress.ioSolucionando a Teoria do Caos com Cypress.io
Solucionando a Teoria do Caos com Cypress.io
 
Testes com TestLink e Selenium
Testes com TestLink e SeleniumTestes com TestLink e Selenium
Testes com TestLink e Selenium
 
DEV-OPS para teste de software
DEV-OPS para teste de softwareDEV-OPS para teste de software
DEV-OPS para teste de software
 
Teste para dispositivos móveis apresentação pra ufam -eliane
Teste para dispositivos móveis   apresentação pra ufam -elianeTeste para dispositivos móveis   apresentação pra ufam -eliane
Teste para dispositivos móveis apresentação pra ufam -eliane
 
DevOps - Melhores práticas na plataforma microsoft
DevOps - Melhores práticas na plataforma microsoftDevOps - Melhores práticas na plataforma microsoft
DevOps - Melhores práticas na plataforma microsoft
 
Automação de testes - uma introdução sobre estratégias
Automação de testes - uma introdução sobre estratégiasAutomação de testes - uma introdução sobre estratégias
Automação de testes - uma introdução sobre estratégias
 

Integração Contínua - Introdução