SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Downloaden Sie, um offline zu lesen
Testes Agile em Processos Agile
Ana Negrello
Fabio Santos

1

#IBMMobile

© 2013 IBM Corporation
Testes e Mé todos Á
geis: a
realidade

2 2

#IBMMobile

© 2013 IBM Corporation
Terminologia: Agile e Lean

• Agile – Entregue VALOR
– Uma abordagem que foca em entregar elementos de valor para o
cliente
– Evite tudo que não traz valor
– Descrença em planos detalhados logo no início do projeto

http://www.rallydev.com/community/agile-blog/
agile-and-lean-software-development---oxymoron

DevOps – Entregue VALOR no ciclo todo
3

#IBMMobile

© 2013 IBM Corporation
Mudanças sustanciais precisam ser feitas para endereçar qualidade em projetos
agile
Abordagem
Tradicional
Defeitos
encontados
tardiamente,
quanto sao
mais caros para
corrigir

4

Abordagem
Agile
Defeitos
encontrados
cedo,
quando sao
mais baratos
de corrigir

#IBMMobile

© 2013 IBM Corporation

Data from IBM Websphere CICS team based on their agile adoption
Agilidade diminui
Qual a definição de “código executável e estável”?
 Os testes de integração são realizados apenas no final do projeto? Iterações de testes?
 Desafio em termos de colaboração: desenvolvedores trabalhando de forma alinhada
 Os desenvolvedores estão fazendo validação das integrações?

 O quanto você está comprometido
com a denifição de código executável e estável?

5

#IBMMobile

© 2013 IBM Corporation
Métodos Agile : modo de testar muda

 Enfoque tradicional: foco nos diferentes tipos de
testes, realizados por times distintos – unitários,
funcionais, performance, usabilidade, segurança,etc

 Qualidade é responsabilidade de todos!!!

 Mas na prática: testadores são responsabilizados pela
qualidade

6

#IBMMobile

© 2013 IBM Corporation
Qual a dificuldade?

7 7

#IBMMobile

© 2013 IBM Corporation
Qual a dificuldade para realizar os testes na iteração?
 Ambientes e sistemas de testes
indisponíveis
 Seu código depende de outros
componentes que não estão prontos
 Maioria dos testes são orientados a
interface
 Pessoas disponíveis para testes –
áreas usuárias

8

#IBMMobile

© 2013 IBM Corporation
E é difícil configurar o ambiente para os testes de integração

Business Partners

Content
Providers
Web/
Internet

Shared
Services
Portals
Messaging Services
Routing
Service

Third-party
Services

Directory
Identity

Application

Collaboration
File systems

EJB

Enterprise Service Bus

Data Warehouse

Mainframe
Archives

9

#IBMMobile

© 2013 IBM Corporation
Você já passou por isso?
Escreve e libera
código

Builds noturnos

Compila, testes unitários,
publica

Gastei 2 semanas configurando isso &
e o build deu problema?$%^??
ConfigurarAmbiente de
Testes Inetgrados

DeveloperDesenvolvedor r
Desenvolvedorr
Desenvolvedorr
Desenvolvedor
Desenvolvedor

Testador

N dias para instalar e configurar
Quando a agilidade para nos
testes integrados,

toda a organização para junto

Iteration
planning
Week 7
Iteration 1 Design, Code,
Iteration 2 Design, Code,
Test
Test
Weeks 2 - 6
Weeks 8 -12

Integration test
iteration #1

Iteration
planning
Week 1

SVT
prep

Testes de integração ficam
um passo atrás do código

N build noturnos empilhados

10

Integration test
iteration #2

#IBMMobile

© 2013 IBM Corporation
Qual a saída?

11
11

#IBMMobile

© 2013 IBM Corporation
A Virtualização de Serviços é uma das saídas
Virtualização habilita Teste Contínuos de
Integração

Serviço/App Real
Serviço/App Virtual

Serviços, aplicações, sistemas são
introduzidos dentro do ciclo de integração
contínua de forma priorizada, controlada.

Incrementalmente Testando a Integração
Incrementalmente Testando a Integração
12

#IBMMobile

© 2013 IBM Corporation
A Montagem do Ambiente de Testes fica mais Simples com Virtualização

Business Partners

Content
Providers
Web/
Internet

Shared
Services
Portals
Messaging Services
Routing
Service

Third-party
Services

Directory
Identity

Application

Collaboration
File systems

EJB

Enterprise Service Bus

Data Warehouse

13

Mainframe

#IBMMobile

Archives

© 2013 IBM Corporation
Integração Contínua
 Builds diários são bom começo
 Agilistas atualizam e testam o código o
tempo todo
 Assim, o sistema precisa ser regerado
constantemente
 Compilar
 Testes de regressao
 Análise estática de código

 Pontos críticos:
 Precisa de automação
 Não se esqueça dos Bancos de Dados
 Precisa estabalecer um protocolo para
implantar os builds em áreas de
trabalho.
 Não significa que o sistema vai ser
liberado para produção a cada semana
14

#IBMMobile

© 2013 IBM Corporation
Setup do Ambiente de Testes

Atividade
Produtiva

Consome mais de 50% do tempo de testes

Times trabalham
Fase
QA de forma
Produção
Independent Test
colaborativa

Desenvolvimento
Agile
Iteração 1… n

Dias
Build Noturno

Check ins

Delay

Setup manual
Do amb de testes

Dias

Delay

Setup manual
Setup manual
Do amb de testes
Do amb de testes

Dias
Pacote ok para
ser liberado

Teste de
Integração

Delay

Executa Testes
Encontra Defeitos

Setup do amb Testes em
15
minutos

Dias

Delay

Setup manual
Setup manual
Do amb de testes
Do amb de testes

Corrige Defeitos

Entrega do pacote

Testa&
Verifica

para Produção

Manual setup
Manual setup
of Test Env
of Test Env

Testa &
Verifica

Tempo para atividade produtiva aumenta
#IBMMobile

© 2013 IBM Corporation
Os builds passaram
pelos testes

Testes contínuos de integração

Compilar

Teste Unitário

de Integração

Instala &
Configura

Setup Ambiente
de Testes

Virtualização
De Serviços

Executa
Os testes

Publica
Resultados

Rational Quality
Manager

O Build só é liberado quando
passou pelos testes de
integração.
16

#IBMMobile

© 2013 IBM Corporation
Quem faz o que
 Alguns pré-reqs
− Necessário automatizar testes de regressão
− Infrastrutura existe para implantação do sistema em teste
 Organizações de testes trabalham com desenvolvedores para criar os serviços virtualizados
− As definições dependem do que escopo dos testes de regressão e das depedencias com
outros sistemas
 Modificar automação dos builds
− Automatizar a instalação de componentes
− Automatizar a ativação dos serviços virtuais
− Ativar execução dos testes
− Atualizar resultado dos builds

17

#IBMMobile

© 2013 IBM Corporation
Incorporando a virtualização de serviços

Define baseline

Planej. Sprint

Uma vez,
apenas

Instala

Sprint

Prep virtualiz
De serviço

Completa uma story

Atualiza Def.
de Build

Constrói Testes
Desenvolve

Testa

Build
Key

Estabiliza
18

* Money That Matters Scenario 2012

Compara baseline
#IBMMobile

Agile
Agile com
VirtualizaçãoIBM Corporation
© 2013 de Serviços
Alinhamento entre o time
Colaboração

 Colaboração
− Desenv & Testadores no mesmo código ao mesmo tempo
− Defeitos encontrados e corrigidos mais cedo
 Muda o tipo de métricas
− Tempo para corrigir bugs x numero de bugs
− # erros em produção
 Teste de integração acontecendo em toda iteração e build
− Todos sistema sendo testado e verificado
− Em termos Agile, de fato “done, done, done” em cada iteração

19

#IBMMobile

© 2013 IBM Corporation
IBM Rational Quality Management Offerings
IBM Collaborative Application Lifecycle Management

Rational Quality Manager
Quality Dashboard
Test Management

Requirements
Management

Defect
Management
Create

Build

Manage

Execute

Report

Plan

Tests

Test Lab

Tests

Results

Best Practice Processes
Collaboration
Presentation:
Mashups

Unit
Testing

Discovery

Search & Query

Storage

Open Lifecycle Service Integrations

Integration
Testing

Functional
Testing

Performance
Testing

Test Data
Management
Test
Virtualization

RationalT
20

Rational
Functional Tester

Rational
#IBMMobile
Performance Tester

Administration: Users,
projects, process

RTVS, RTW

Optim
TDM

20
© 2013 IBM Corporation
Recursos Disponíveis














Youtube:
What is Service Virtualization:
http://www.youtube.com/watch?v=Np5_O43BFD4&list=PLEE1757606E9348F5&index=1&feature=plpp_video
What is Continuous Integration Testing:
http://www.youtube.com/watch?v=wGOogTsOtc4&list=PLEE1757606E9348F5&index=3&feature=plpp_video
When to you Service Virtualization:
http://www.youtube.com/watch?v=j1f5vP3gCIM&list=PLEE1757606E9348F5&index=2&feature=plpp_video
Videos feitos por parceiros IBM:
http://www.youtube.com/playlist?list=PLlhg84-xzjfwdUShtwq7sG4HZQpFUwwFM&feature=edit_ok

Artigos:
Artigo em português: Métodos ágeis e qualidade: como conciliar?
https://www.ibm.com/developerworks/mydeveloperworks/blogs/rationalbrasil/entry/m_c3_a9todos__c3_a1geis_e_qualidad
e_como_conciliar2?lang=pt_br
 PDF - Service Virtualization for dummies:
 https://www14.software.ibm.com/webapp/iwm/web/signup.do?source=swg-rtl-sd-wp&S_PKG=ov13523

 Use service virtualization to remove testing bottlenecks
 http://library.theserverside.com/data/document.do?res_id=1368550664_519

 Relatórios de Mercado:
 Relatório de mercado Infotech 2013 – IBM como líder de testes:
 https://www14.software.ibm.com/webapp/iwm/web/signup.do?source=swg-rtl-sd-ar&S_PKG=ov12576
 Relatório sobre ROI em Virtualização da WinterGreen Resear Inc:
 https://www14.software.ibm.com/webapp/iwm/web/signup.do?source=swg-rtl-sd-wp&S_PKG=ov12601
 Forrester Research Total Economic Impact Study on Service Virtualization and Test Automation Solutions (estudo de
caso de implementação pela Sadhanta)
 https://www14.software.ibm.com/webapp/iwm/web/signup.do?source=swg-rtl-sd-ar&S_PKG=ov16778

21

#IBMMobile

© 2013 IBM Corporation
Recursos Disponíveis










Webcasts:
Webcast especialista de mercado: "Is early Performance Test really valuable and viable?" :.
http://video.webcasts.com/events/pmny001/viewer/index.jsp?eventid=43694




Recording a mobile app test using RTW
http://www.youtube.com/watch?v=ktQ9HUGytZo




Running a mobile app test using RTW
http://www.youtube.com/watch?v=s6mq5qoj6Fs




Creating virtualized services for a mobile app using RIT
http://www.youtube.com/watch?v=Z2bVWS70EAA




Running virtualized services for a mobile app using RTVS
http://www.youtube.com/watch?v=QWPTwbkY4NM




Setting up a mobile app test using RQM
http://www.youtube.com/watch?v=ZmkLHhPuHeg




Putting it together: Running a mobile app test against virtualized services for a mobile app using RQM, RTW, RTVS
http://www.youtube.com/watch?v=oyhnRfeMq-w





22

Webcast IBM (português)
http://www.tiwebcast.com.br/WebcastImages/IBM/525444_IBM_Podcast.zip
Mobile:
http://www.youtube.com/watch?v=w1HRP85vnKM
http://www.youtube.com/watch?v=kPiVpl8lbjw

Adoção de Agile na IBM:
http://www.youtube.com/watch?v=PjE-XeJuV7Q&list=PLF491A0C598AF9E39&index=24

#IBMMobile

© 2013 IBM Corporation
Visite nosso estande !
Temos demonstraç õ das
es
Soluç õ Integradas:
es
- Virtualizaç ã de Serviç os
o
- Testes de Mobile
- Gerenciamento de Qualidade
ananegre@br.ibm.com
fabiossa@br.ibm.com

23
23

#IBMMobile

© 2013 IBM Corporation

Weitere ähnliche Inhalte

Was ist angesagt?

Teltools - Fábrica de Software - Resumida - V1
Teltools - Fábrica de Software - Resumida - V1Teltools - Fábrica de Software - Resumida - V1
Teltools - Fábrica de Software - Resumida - V1slides_teltools
 
Continuous Delivery - versão estendida :)
Continuous Delivery - versão estendida :)Continuous Delivery - versão estendida :)
Continuous Delivery - versão estendida :)Samanta Cicilia
 
Qualidade de software e sua influência no sucesso do projeto
Qualidade de software e sua influência no sucesso do projetoQualidade de software e sua influência no sucesso do projeto
Qualidade de software e sua influência no sucesso do projetoValquíria Duarte D'Amato
 
[Uff] Continuous Delivery: Entrega Contínua de Software de Valor
[Uff] Continuous Delivery: Entrega Contínua de Software de Valor[Uff] Continuous Delivery: Entrega Contínua de Software de Valor
[Uff] Continuous Delivery: Entrega Contínua de Software de ValorSamanta Cicilia
 
Padrão de estrangulamento na prática – A jornada de modernização de um legado...
Padrão de estrangulamento na prática – A jornada de modernização de um legado...Padrão de estrangulamento na prática – A jornada de modernização de um legado...
Padrão de estrangulamento na prática – A jornada de modernização de um legado...ThoughtWorks Brasil
 
Continuous Delivery & APIs - Evoluindo uma Arquitetura Orientada a Serviços
Continuous Delivery & APIs - Evoluindo uma Arquitetura Orientada a ServiçosContinuous Delivery & APIs - Evoluindo uma Arquitetura Orientada a Serviços
Continuous Delivery & APIs - Evoluindo uma Arquitetura Orientada a ServiçosSamanta Cicilia
 
Tendências e Dicas para o Desenvolvimento de Software
Tendências e Dicas para o Desenvolvimento de SoftwareTendências e Dicas para o Desenvolvimento de Software
Tendências e Dicas para o Desenvolvimento de SoftwareNorberto Santos
 
[DevOps Carioca] Continuous Delivery
[DevOps Carioca]  Continuous Delivery[DevOps Carioca]  Continuous Delivery
[DevOps Carioca] Continuous DeliverySamanta Cicilia
 
[Agile Brazil] Entrega Contínua na Infoglobo: gerando valor em 2 horas
[Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas[Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
[Agile Brazil] Entrega Contínua na Infoglobo: gerando valor em 2 horasSamanta Cicilia
 
Modelos de Processo de Software Parte 4
Modelos de Processo de Software Parte 4Modelos de Processo de Software Parte 4
Modelos de Processo de Software Parte 4Elaine Cecília Gatto
 
Sbqs 2010 Processo de Teste de Software para Scrum
Sbqs 2010 Processo de Teste de Software para ScrumSbqs 2010 Processo de Teste de Software para Scrum
Sbqs 2010 Processo de Teste de Software para ScrumEliane Collins
 
Entrega Contínua aplicada a Machine Learning
Entrega Contínua aplicada a Machine LearningEntrega Contínua aplicada a Machine Learning
Entrega Contínua aplicada a Machine LearningThoughtWorks Brasil
 
Apresentação webinar - DevOps - Os benefícios de um pipeline de entrega continua
Apresentação webinar - DevOps - Os benefícios de um pipeline de entrega continuaApresentação webinar - DevOps - Os benefícios de um pipeline de entrega continua
Apresentação webinar - DevOps - Os benefícios de um pipeline de entrega continuaJuliana Cavalheiro
 
Entrega Contínua - 2º Encontro Rational de Desenvolvimento de Software
Entrega Contínua -  2º Encontro Rational de Desenvolvimento de SoftwareEntrega Contínua -  2º Encontro Rational de Desenvolvimento de Software
Entrega Contínua - 2º Encontro Rational de Desenvolvimento de SoftwareFelipe Freire
 
XP - Extreme Programming
XP - Extreme ProgrammingXP - Extreme Programming
XP - Extreme ProgrammingRodrigo Branas
 
Ágil na Prática
Ágil na PráticaÁgil na Prática
Ágil na PráticaIgo Coelho
 
Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)Rennan Martini
 
Qualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual StudioQualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual StudioAdriano Bertucci
 
DevOps - Integrando TFS com System Center
DevOps - Integrando TFS com System CenterDevOps - Integrando TFS com System Center
DevOps - Integrando TFS com System CenterFelipe Rezende
 

Was ist angesagt? (20)

Teltools - Fábrica de Software - Resumida - V1
Teltools - Fábrica de Software - Resumida - V1Teltools - Fábrica de Software - Resumida - V1
Teltools - Fábrica de Software - Resumida - V1
 
Continuous Delivery - versão estendida :)
Continuous Delivery - versão estendida :)Continuous Delivery - versão estendida :)
Continuous Delivery - versão estendida :)
 
Testes
TestesTestes
Testes
 
Qualidade de software e sua influência no sucesso do projeto
Qualidade de software e sua influência no sucesso do projetoQualidade de software e sua influência no sucesso do projeto
Qualidade de software e sua influência no sucesso do projeto
 
[Uff] Continuous Delivery: Entrega Contínua de Software de Valor
[Uff] Continuous Delivery: Entrega Contínua de Software de Valor[Uff] Continuous Delivery: Entrega Contínua de Software de Valor
[Uff] Continuous Delivery: Entrega Contínua de Software de Valor
 
Padrão de estrangulamento na prática – A jornada de modernização de um legado...
Padrão de estrangulamento na prática – A jornada de modernização de um legado...Padrão de estrangulamento na prática – A jornada de modernização de um legado...
Padrão de estrangulamento na prática – A jornada de modernização de um legado...
 
Continuous Delivery & APIs - Evoluindo uma Arquitetura Orientada a Serviços
Continuous Delivery & APIs - Evoluindo uma Arquitetura Orientada a ServiçosContinuous Delivery & APIs - Evoluindo uma Arquitetura Orientada a Serviços
Continuous Delivery & APIs - Evoluindo uma Arquitetura Orientada a Serviços
 
Tendências e Dicas para o Desenvolvimento de Software
Tendências e Dicas para o Desenvolvimento de SoftwareTendências e Dicas para o Desenvolvimento de Software
Tendências e Dicas para o Desenvolvimento de Software
 
[DevOps Carioca] Continuous Delivery
[DevOps Carioca]  Continuous Delivery[DevOps Carioca]  Continuous Delivery
[DevOps Carioca] Continuous Delivery
 
[Agile Brazil] Entrega Contínua na Infoglobo: gerando valor em 2 horas
[Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas[Agile Brazil] Entrega Contínua na Infoglobo:  gerando valor em 2 horas
[Agile Brazil] Entrega Contínua na Infoglobo: gerando valor em 2 horas
 
Modelos de Processo de Software Parte 4
Modelos de Processo de Software Parte 4Modelos de Processo de Software Parte 4
Modelos de Processo de Software Parte 4
 
Sbqs 2010 Processo de Teste de Software para Scrum
Sbqs 2010 Processo de Teste de Software para ScrumSbqs 2010 Processo de Teste de Software para Scrum
Sbqs 2010 Processo de Teste de Software para Scrum
 
Entrega Contínua aplicada a Machine Learning
Entrega Contínua aplicada a Machine LearningEntrega Contínua aplicada a Machine Learning
Entrega Contínua aplicada a Machine Learning
 
Apresentação webinar - DevOps - Os benefícios de um pipeline de entrega continua
Apresentação webinar - DevOps - Os benefícios de um pipeline de entrega continuaApresentação webinar - DevOps - Os benefícios de um pipeline de entrega continua
Apresentação webinar - DevOps - Os benefícios de um pipeline de entrega continua
 
Entrega Contínua - 2º Encontro Rational de Desenvolvimento de Software
Entrega Contínua -  2º Encontro Rational de Desenvolvimento de SoftwareEntrega Contínua -  2º Encontro Rational de Desenvolvimento de Software
Entrega Contínua - 2º Encontro Rational de Desenvolvimento de Software
 
XP - Extreme Programming
XP - Extreme ProgrammingXP - Extreme Programming
XP - Extreme Programming
 
Ágil na Prática
Ágil na PráticaÁgil na Prática
Ágil na Prática
 
Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)
 
Qualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual StudioQualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual Studio
 
DevOps - Integrando TFS com System Center
DevOps - Integrando TFS com System CenterDevOps - Integrando TFS com System Center
DevOps - Integrando TFS com System Center
 

Ähnlich wie Brateste 2013: Testes Agile em Processos Agile

TDC 2013 7 Dicas para acelerar os testes
TDC 2013  7 Dicas para acelerar os testesTDC 2013  7 Dicas para acelerar os testes
TDC 2013 7 Dicas para acelerar os testesFelipe Freire
 
Tdc continuous testing
Tdc   continuous testing Tdc   continuous testing
Tdc continuous testing Walter Farias
 
Brateste 2103: Virtualização de Serviços para uma Nova Abordagem em testes
Brateste 2103:  Virtualização de Serviços para uma Nova Abordagem em testesBrateste 2103:  Virtualização de Serviços para uma Nova Abordagem em testes
Brateste 2103: Virtualização de Serviços para uma Nova Abordagem em testesananegrello
 
ERES 2018 - Microserviços: Desafios para Lidar com a Qualidade
ERES 2018 - Microserviços: Desafios para Lidar com a QualidadeERES 2018 - Microserviços: Desafios para Lidar com a Qualidade
ERES 2018 - Microserviços: Desafios para Lidar com a QualidadeAndré Abe Vicente
 
Teste Contínuo de Integração e Virtualização de Serviços
Teste Contínuo de Integração e Virtualização de ServiçosTeste Contínuo de Integração e Virtualização de Serviços
Teste Contínuo de Integração e Virtualização de ServiçosRationalBrasil
 
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
 
ABTesting: Não há nada como testar em produção!
ABTesting: Não há nada como testar em produção!ABTesting: Não há nada como testar em produção!
ABTesting: Não há nada como testar em produção!Daniel Semedo
 
Entregando inovação de forma contínua com maior agilidade
Entregando inovação de forma contínua com maior agilidadeEntregando inovação de forma contínua com maior agilidade
Entregando inovação de forma contínua com maior agilidadeAllyson Chiarini
 
Integração contínua - Prática de desenvolvimento
Integração contínua - Prática de desenvolvimentoIntegração contínua - Prática de desenvolvimento
Integração contínua - Prática de desenvolvimentoMario Mendonça
 
ld0mg1hrlhzbyvgfiyyq-signature-d9919623d100cd87ad7553e4c50163aa9329a439464540...
ld0mg1hrlhzbyvgfiyyq-signature-d9919623d100cd87ad7553e4c50163aa9329a439464540...ld0mg1hrlhzbyvgfiyyq-signature-d9919623d100cd87ad7553e4c50163aa9329a439464540...
ld0mg1hrlhzbyvgfiyyq-signature-d9919623d100cd87ad7553e4c50163aa9329a439464540...Antonio Lobato
 
Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016Ramon Durães
 
Descomplicando CI/CD com Jenkins, Docker Swarm e Github
Descomplicando CI/CD com Jenkins, Docker Swarm e GithubDescomplicando CI/CD com Jenkins, Docker Swarm e Github
Descomplicando CI/CD com Jenkins, Docker Swarm e GithubMarcelo Souza Vieira
 
Qualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALMQualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALMAdriano Bertucci
 
O que é DevOps? Introdução à abordagem pela IBM
O que é DevOps? Introdução à abordagem pela IBMO que é DevOps? Introdução à abordagem pela IBM
O que é DevOps? Introdução à abordagem pela IBMFelipe Freire
 
Menos teste e mais qualidade - como equilibrar essa equação?
Menos teste e mais qualidade - como equilibrar essa equação?Menos teste e mais qualidade - como equilibrar essa equação?
Menos teste e mais qualidade - como equilibrar essa equação?Igor Abade
 
Automação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração ContínuaAutomação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração ContínuaGabriela Patuci
 

Ähnlich wie Brateste 2013: Testes Agile em Processos Agile (20)

TDC 2013 7 Dicas para acelerar os testes
TDC 2013  7 Dicas para acelerar os testesTDC 2013  7 Dicas para acelerar os testes
TDC 2013 7 Dicas para acelerar os testes
 
Tdc continuous testing
Tdc   continuous testing Tdc   continuous testing
Tdc continuous testing
 
Brateste 2103: Virtualização de Serviços para uma Nova Abordagem em testes
Brateste 2103:  Virtualização de Serviços para uma Nova Abordagem em testesBrateste 2103:  Virtualização de Serviços para uma Nova Abordagem em testes
Brateste 2103: Virtualização de Serviços para uma Nova Abordagem em testes
 
Testes em aplicativos móveis
Testes em aplicativos móveisTestes em aplicativos móveis
Testes em aplicativos móveis
 
ERES 2018 - Microserviços: Desafios para Lidar com a Qualidade
ERES 2018 - Microserviços: Desafios para Lidar com a QualidadeERES 2018 - Microserviços: Desafios para Lidar com a Qualidade
ERES 2018 - Microserviços: Desafios para Lidar com a Qualidade
 
Android apps ci
Android apps ciAndroid apps ci
Android apps ci
 
Teste Contínuo de Integração e Virtualização de Serviços
Teste Contínuo de Integração e Virtualização de ServiçosTeste Contínuo de Integração e Virtualização de Serviços
Teste Contínuo de Integração e Virtualização de Serviços
 
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
 
ABTesting: Não há nada como testar em produção!
ABTesting: Não há nada como testar em produção!ABTesting: Não há nada como testar em produção!
ABTesting: Não há nada como testar em produção!
 
Entregando inovação de forma contínua com maior agilidade
Entregando inovação de forma contínua com maior agilidadeEntregando inovação de forma contínua com maior agilidade
Entregando inovação de forma contínua com maior agilidade
 
Integração contínua - Prática de desenvolvimento
Integração contínua - Prática de desenvolvimentoIntegração contínua - Prática de desenvolvimento
Integração contínua - Prática de desenvolvimento
 
ld0mg1hrlhzbyvgfiyyq-signature-d9919623d100cd87ad7553e4c50163aa9329a439464540...
ld0mg1hrlhzbyvgfiyyq-signature-d9919623d100cd87ad7553e4c50163aa9329a439464540...ld0mg1hrlhzbyvgfiyyq-signature-d9919623d100cd87ad7553e4c50163aa9329a439464540...
ld0mg1hrlhzbyvgfiyyq-signature-d9919623d100cd87ad7553e4c50163aa9329a439464540...
 
Integração Contínua
Integração ContínuaIntegração Contínua
Integração Contínua
 
Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016Keynote Visual Studio Summit 2016
Keynote Visual Studio Summit 2016
 
Descomplicando CI/CD com Jenkins, Docker Swarm e Github
Descomplicando CI/CD com Jenkins, Docker Swarm e GithubDescomplicando CI/CD com Jenkins, Docker Swarm e Github
Descomplicando CI/CD com Jenkins, Docker Swarm e Github
 
Qualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALMQualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALM
 
O que é DevOps? Introdução à abordagem pela IBM
O que é DevOps? Introdução à abordagem pela IBMO que é DevOps? Introdução à abordagem pela IBM
O que é DevOps? Introdução à abordagem pela IBM
 
Continuous Deployment
Continuous DeploymentContinuous Deployment
Continuous Deployment
 
Menos teste e mais qualidade - como equilibrar essa equação?
Menos teste e mais qualidade - como equilibrar essa equação?Menos teste e mais qualidade - como equilibrar essa equação?
Menos teste e mais qualidade - como equilibrar essa equação?
 
Automação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração ContínuaAutomação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração Contínua
 

Brateste 2013: Testes Agile em Processos Agile

  • 1. Testes Agile em Processos Agile Ana Negrello Fabio Santos 1 #IBMMobile © 2013 IBM Corporation
  • 2. Testes e Mé todos Á geis: a realidade 2 2 #IBMMobile © 2013 IBM Corporation
  • 3. Terminologia: Agile e Lean • Agile – Entregue VALOR – Uma abordagem que foca em entregar elementos de valor para o cliente – Evite tudo que não traz valor – Descrença em planos detalhados logo no início do projeto http://www.rallydev.com/community/agile-blog/ agile-and-lean-software-development---oxymoron DevOps – Entregue VALOR no ciclo todo 3 #IBMMobile © 2013 IBM Corporation
  • 4. Mudanças sustanciais precisam ser feitas para endereçar qualidade em projetos agile Abordagem Tradicional Defeitos encontados tardiamente, quanto sao mais caros para corrigir 4 Abordagem Agile Defeitos encontrados cedo, quando sao mais baratos de corrigir #IBMMobile © 2013 IBM Corporation Data from IBM Websphere CICS team based on their agile adoption
  • 5. Agilidade diminui Qual a definição de “código executável e estável”?  Os testes de integração são realizados apenas no final do projeto? Iterações de testes?  Desafio em termos de colaboração: desenvolvedores trabalhando de forma alinhada  Os desenvolvedores estão fazendo validação das integrações?  O quanto você está comprometido com a denifição de código executável e estável? 5 #IBMMobile © 2013 IBM Corporation
  • 6. Métodos Agile : modo de testar muda  Enfoque tradicional: foco nos diferentes tipos de testes, realizados por times distintos – unitários, funcionais, performance, usabilidade, segurança,etc  Qualidade é responsabilidade de todos!!!  Mas na prática: testadores são responsabilizados pela qualidade 6 #IBMMobile © 2013 IBM Corporation
  • 7. Qual a dificuldade? 7 7 #IBMMobile © 2013 IBM Corporation
  • 8. Qual a dificuldade para realizar os testes na iteração?  Ambientes e sistemas de testes indisponíveis  Seu código depende de outros componentes que não estão prontos  Maioria dos testes são orientados a interface  Pessoas disponíveis para testes – áreas usuárias 8 #IBMMobile © 2013 IBM Corporation
  • 9. E é difícil configurar o ambiente para os testes de integração Business Partners Content Providers Web/ Internet Shared Services Portals Messaging Services Routing Service Third-party Services Directory Identity Application Collaboration File systems EJB Enterprise Service Bus Data Warehouse Mainframe Archives 9 #IBMMobile © 2013 IBM Corporation
  • 10. Você já passou por isso? Escreve e libera código Builds noturnos Compila, testes unitários, publica Gastei 2 semanas configurando isso & e o build deu problema?$%^?? ConfigurarAmbiente de Testes Inetgrados DeveloperDesenvolvedor r Desenvolvedorr Desenvolvedorr Desenvolvedor Desenvolvedor Testador N dias para instalar e configurar Quando a agilidade para nos testes integrados, toda a organização para junto Iteration planning Week 7 Iteration 1 Design, Code, Iteration 2 Design, Code, Test Test Weeks 2 - 6 Weeks 8 -12 Integration test iteration #1 Iteration planning Week 1 SVT prep Testes de integração ficam um passo atrás do código N build noturnos empilhados 10 Integration test iteration #2 #IBMMobile © 2013 IBM Corporation
  • 11. Qual a saída? 11 11 #IBMMobile © 2013 IBM Corporation
  • 12. A Virtualização de Serviços é uma das saídas Virtualização habilita Teste Contínuos de Integração Serviço/App Real Serviço/App Virtual Serviços, aplicações, sistemas são introduzidos dentro do ciclo de integração contínua de forma priorizada, controlada. Incrementalmente Testando a Integração Incrementalmente Testando a Integração 12 #IBMMobile © 2013 IBM Corporation
  • 13. A Montagem do Ambiente de Testes fica mais Simples com Virtualização Business Partners Content Providers Web/ Internet Shared Services Portals Messaging Services Routing Service Third-party Services Directory Identity Application Collaboration File systems EJB Enterprise Service Bus Data Warehouse 13 Mainframe #IBMMobile Archives © 2013 IBM Corporation
  • 14. Integração Contínua  Builds diários são bom começo  Agilistas atualizam e testam o código o tempo todo  Assim, o sistema precisa ser regerado constantemente  Compilar  Testes de regressao  Análise estática de código  Pontos críticos:  Precisa de automação  Não se esqueça dos Bancos de Dados  Precisa estabalecer um protocolo para implantar os builds em áreas de trabalho.  Não significa que o sistema vai ser liberado para produção a cada semana 14 #IBMMobile © 2013 IBM Corporation
  • 15. Setup do Ambiente de Testes Atividade Produtiva Consome mais de 50% do tempo de testes Times trabalham Fase QA de forma Produção Independent Test colaborativa Desenvolvimento Agile Iteração 1… n Dias Build Noturno Check ins Delay Setup manual Do amb de testes Dias Delay Setup manual Setup manual Do amb de testes Do amb de testes Dias Pacote ok para ser liberado Teste de Integração Delay Executa Testes Encontra Defeitos Setup do amb Testes em 15 minutos Dias Delay Setup manual Setup manual Do amb de testes Do amb de testes Corrige Defeitos Entrega do pacote Testa& Verifica para Produção Manual setup Manual setup of Test Env of Test Env Testa & Verifica Tempo para atividade produtiva aumenta #IBMMobile © 2013 IBM Corporation
  • 16. Os builds passaram pelos testes Testes contínuos de integração Compilar Teste Unitário de Integração Instala & Configura Setup Ambiente de Testes Virtualização De Serviços Executa Os testes Publica Resultados Rational Quality Manager O Build só é liberado quando passou pelos testes de integração. 16 #IBMMobile © 2013 IBM Corporation
  • 17. Quem faz o que  Alguns pré-reqs − Necessário automatizar testes de regressão − Infrastrutura existe para implantação do sistema em teste  Organizações de testes trabalham com desenvolvedores para criar os serviços virtualizados − As definições dependem do que escopo dos testes de regressão e das depedencias com outros sistemas  Modificar automação dos builds − Automatizar a instalação de componentes − Automatizar a ativação dos serviços virtuais − Ativar execução dos testes − Atualizar resultado dos builds 17 #IBMMobile © 2013 IBM Corporation
  • 18. Incorporando a virtualização de serviços Define baseline Planej. Sprint Uma vez, apenas Instala Sprint Prep virtualiz De serviço Completa uma story Atualiza Def. de Build Constrói Testes Desenvolve Testa Build Key Estabiliza 18 * Money That Matters Scenario 2012 Compara baseline #IBMMobile Agile Agile com VirtualizaçãoIBM Corporation © 2013 de Serviços
  • 19. Alinhamento entre o time Colaboração  Colaboração − Desenv & Testadores no mesmo código ao mesmo tempo − Defeitos encontrados e corrigidos mais cedo  Muda o tipo de métricas − Tempo para corrigir bugs x numero de bugs − # erros em produção  Teste de integração acontecendo em toda iteração e build − Todos sistema sendo testado e verificado − Em termos Agile, de fato “done, done, done” em cada iteração 19 #IBMMobile © 2013 IBM Corporation
  • 20. IBM Rational Quality Management Offerings IBM Collaborative Application Lifecycle Management Rational Quality Manager Quality Dashboard Test Management Requirements Management Defect Management Create Build Manage Execute Report Plan Tests Test Lab Tests Results Best Practice Processes Collaboration Presentation: Mashups Unit Testing Discovery Search & Query Storage Open Lifecycle Service Integrations Integration Testing Functional Testing Performance Testing Test Data Management Test Virtualization RationalT 20 Rational Functional Tester Rational #IBMMobile Performance Tester Administration: Users, projects, process RTVS, RTW Optim TDM 20 © 2013 IBM Corporation
  • 21. Recursos Disponíveis              Youtube: What is Service Virtualization: http://www.youtube.com/watch?v=Np5_O43BFD4&list=PLEE1757606E9348F5&index=1&feature=plpp_video What is Continuous Integration Testing: http://www.youtube.com/watch?v=wGOogTsOtc4&list=PLEE1757606E9348F5&index=3&feature=plpp_video When to you Service Virtualization: http://www.youtube.com/watch?v=j1f5vP3gCIM&list=PLEE1757606E9348F5&index=2&feature=plpp_video Videos feitos por parceiros IBM: http://www.youtube.com/playlist?list=PLlhg84-xzjfwdUShtwq7sG4HZQpFUwwFM&feature=edit_ok Artigos: Artigo em português: Métodos ágeis e qualidade: como conciliar? https://www.ibm.com/developerworks/mydeveloperworks/blogs/rationalbrasil/entry/m_c3_a9todos__c3_a1geis_e_qualidad e_como_conciliar2?lang=pt_br  PDF - Service Virtualization for dummies:  https://www14.software.ibm.com/webapp/iwm/web/signup.do?source=swg-rtl-sd-wp&S_PKG=ov13523   Use service virtualization to remove testing bottlenecks  http://library.theserverside.com/data/document.do?res_id=1368550664_519   Relatórios de Mercado:  Relatório de mercado Infotech 2013 – IBM como líder de testes:  https://www14.software.ibm.com/webapp/iwm/web/signup.do?source=swg-rtl-sd-ar&S_PKG=ov12576  Relatório sobre ROI em Virtualização da WinterGreen Resear Inc:  https://www14.software.ibm.com/webapp/iwm/web/signup.do?source=swg-rtl-sd-wp&S_PKG=ov12601  Forrester Research Total Economic Impact Study on Service Virtualization and Test Automation Solutions (estudo de caso de implementação pela Sadhanta)  https://www14.software.ibm.com/webapp/iwm/web/signup.do?source=swg-rtl-sd-ar&S_PKG=ov16778 21 #IBMMobile © 2013 IBM Corporation
  • 22. Recursos Disponíveis          Webcasts: Webcast especialista de mercado: "Is early Performance Test really valuable and viable?" :. http://video.webcasts.com/events/pmny001/viewer/index.jsp?eventid=43694   Recording a mobile app test using RTW http://www.youtube.com/watch?v=ktQ9HUGytZo   Running a mobile app test using RTW http://www.youtube.com/watch?v=s6mq5qoj6Fs   Creating virtualized services for a mobile app using RIT http://www.youtube.com/watch?v=Z2bVWS70EAA   Running virtualized services for a mobile app using RTVS http://www.youtube.com/watch?v=QWPTwbkY4NM   Setting up a mobile app test using RQM http://www.youtube.com/watch?v=ZmkLHhPuHeg   Putting it together: Running a mobile app test against virtualized services for a mobile app using RQM, RTW, RTVS http://www.youtube.com/watch?v=oyhnRfeMq-w    22 Webcast IBM (português) http://www.tiwebcast.com.br/WebcastImages/IBM/525444_IBM_Podcast.zip Mobile: http://www.youtube.com/watch?v=w1HRP85vnKM http://www.youtube.com/watch?v=kPiVpl8lbjw Adoção de Agile na IBM: http://www.youtube.com/watch?v=PjE-XeJuV7Q&list=PLF491A0C598AF9E39&index=24 #IBMMobile © 2013 IBM Corporation
  • 23. Visite nosso estande ! Temos demonstraç õ das es Soluç õ Integradas: es - Virtualizaç ã de Serviç os o - Testes de Mobile - Gerenciamento de Qualidade ananegre@br.ibm.com fabiossa@br.ibm.com 23 23 #IBMMobile © 2013 IBM Corporation

Hinweis der Redaktion

  1. Bom dia, Eu sou Ana, trabalho com o Fábio , trabalhamos juntos no time Rational, responsáveis por soluções de Virtualização para o Brasil. Temos exeperiencia na implantação de processos de desenvolvimento A solução que vamos falar faz parte de um plataforma IBM para desenvolvimento de apps mobile, Que inclui diferentes disciplinas e ferramental. A nossa idéia hj é mostrar como o uso de Virtualização de serviços pode contrubir para uma nova abordagemem testes
  2. Vamos então pensar um pouco mais a respeito do processo de testes
  3. I: Teams compromise on the meaning of done, done, done Image: Stuart Miles / FreeDigitalPhotos.net
  4. Vamos então pensar um pouco mais a respeito do processo de testes
  5. We always want to be testing. Stub interfacing components out that are unavailable at the time and then re-introduce them when they are available. O teste de integração pode ser feito em nível de componente. Inicia-se os testes virtualizando os componentes que não estao disponiveis. Ã medida que ficam prontos, são substituídos. E entao, quando um novo componente ou uma nova versão é introduzida, pode se executar testes de regressao. Assim se contra o risco de liberar um componente com erros. É uma abordagem iterativa para os testes de integração. Essa abordagem é interessante para times usando métodos agile, permitindo que os testes sejam de fato executados em cada iteração.
  6. Heterogeneous environment: An IT environment that includes computers, operating systems, platforms, databases, applications, and other components from different vendors. This represents a simple system for a lot of our customers.
  7. Vamos então pensar um pouco mais a respeito do processo de testes
  8. We always want to be testing. Stub interfacing components out that are unavailable at the time and then re-introduce them when they are available. O teste de integração pode ser feito em nível de componente. Inicia-se os testes virtualizando os componentes que não estao disponiveis. Ã medida que ficam prontos, são substituídos. E entao, quando um novo componente ou uma nova versão é introduzida, pode se executar testes de regressao. Assim se contra o risco de liberar um componente com erros. É uma abordagem iterativa para os testes de integração. Essa abordagem é interessante para times usando métodos agile, permitindo que os testes sejam de fato executados em cada iteração.
  9. Por conta dessa complexidade, podemos imaginar o esforço necessário para se confirgurar um ambinete de testes, quando se implanta um sistema novo ou se faz upgrade de uma nova versão. A quantidade de hardware, software, sistemas operacionais, banco de dados usados nesse processo. Em muitos casos, o time de infraestrutura é responsável pela disponibilização desse ambiente. Fazem uso de Vmware, que sem dúvida facilita a montagem dos ambientes, mas ainda assim estas precisam ser instaladas, configuradas e uma vez disponibilizadas, se precisa de alguém que conheça as aplicações, às vezes de terceiros, que saiba como usá-las, conheça as senhas, etc. Isso é uma reliadade para a maioria de nossos clientes.
  10. Effectively “build on steroids” You want to rebuild the system when something changes. On dev sandbox you’ll be building your component(s) several times a day. On integration sandbox you;ll rebuild after promoting your code changes. Ideally you should rebuild this environment at least nightly The pre-production environments will be built less often, perhaps weekly for example, depending on system size and need to do so. You may deploy into production only once a quarter or once a year for example, even though your development iterations are much shorter (e.g. two weeks). Integration support BF and RTC both have automated build functionality Software analyzer does static code analysis. This should be particularly interesting to agile teams looking to take the “next step” in build quality Deployment of code/components BF automates deployment between sandboxes/environments Reporting defects back to the dev team: ClearQuest is used to communicate defect reports/enhancement requests back to the dev team from testers or support people Independent testers can record defects as work items in RTC
  11. P: Finding a way to bring valuable integration testing earlier in the cycle has a positive impact
  12. Complex systems mean nightly testing is insufficient Quality means fewer bugs in production Not necessarily fewer bugs (catch them early) Agile improves quality through working software earlier Finding problems earlier means working software earlier Test driven development and commitment to unit tests only go so far
  13. This is a high level view. Most of the details are in “Prep Service Virutalization”, this requires building the service virtualization stubs, deployment automation and test automation that supports these steps: Build request Nightly build completes (compiles & junits) Automation installs & configures the AUT onto SUT Include a GH agent in the environment All parts of the system except the part that is being built. GH is virtualizing *everything* else GH VIE receives a notification to modify the configuration files on SUT AUT is started Tests are invoked/run Results collected, update build status in RTC
  14. Image: sheelamohan / FreeDigitalPhotos.net