SlideShare uma empresa Scribd logo
1 de 15
DESENVOLVIMENTO ORIENTADO A
TESTE, ISSO FUNCIONA MESMO?
•Community
Manager
•Agilista
•Praieira
•Mãe do Serginho
@carolfvb
Agenda
•Testes
unitários
TDD
ATDD
Desenvolvimento
orientado a Teste
Case de
sucesso
Testes Unitários
Classe Conta:
Testes Unitários
 Com isso testamos todas as possibilidades?
 Testar é mais rápido que codificar?
 Quando parar de testar e começar a codificar?
TDD
Criar um
teste que
falha
Criar um
código
que
funcione
Refatore
Tarefa
 O TDD nasceu lá em 2003 por Kent Beck;
 Escrevemos um Teste que inicialmente não passa (Red);
 Adicionamos uma nova funcionalidade do sistema;
 Fazemos o Teste passar (Green);
 Refatoramos o código da nova funcionalidade (Refactoring);
 Escrevemos o próximo Teste.
ATDD
Um analista de
qualidade e um
programador que
colaboram juntos
para atingir a meta
da equipe, em
relação a automação
de teste, agregam
muito valor quando
iniciam a abordagem
do ATDD.
Markus Gärtner
❑ Debater
❑ Refinar
❑ Desenvolver
❑ Revisar
Ciclo
TDD
Vermelho
Item
(Revisar)
Debater Refinar
Historia
Demo Desenvolver
Ciclo de Desenvolvimento
Orientado a Teste de Aceitação
(ATDD)
Desenvolvimento orientado a Testes
❑ Debater (Product Backlog);
❑ Refinar (Reunião de refinamento, já criando os esqueletos dos testes);
❑ Planejar (Planejar testes e detalhamento dos BDD’s);
❑ Desenvolver (utilizar uma gama maior de testes unitários e uma menor de
aceitação);
❑ Revisar (Reveiw).
Debater
Refinar
Product backlog
Revisar
Desenvolver
Desenvolvimento Orientado a Teste
Testes
Testes unitário
Testes aceitação
Planejar
Debater (Product Backlog)
❑ Presença do QA na composição do backlog
❑ Aprofundar os critérios de aceite
❑ Auxilio com visão técnica
Debater
Product backlog
Refinar
❑ Inserir critérios de aceitação técnicos
❑ Derivação dos tipos de testes (Unitários x Aceite)
❑ Mapeamento de risco
Refinamento
Testes
Planejar
❑ Apresentar cobertura dos testes
❑ Detalhamento dos BDD’s voltados para aceitação
❑ Auxiliar Dev’s com visão de negócios
Planejar
Desenvolver
❑ Criar testes antes de escrever o código
❑ Pair programming Dev e QA
❑ Maior gama de testes unitários
❑ Menor gama de testes de aceitação
❑ Evita o ˜CascÁgil˜
Desenvolvimento
Testes unitário
Testes aceitação
Revisar
❑ Adiantar a homologação das demandas
❑ Assertividade das entregas
Revisar
❑ E-commerce de Vinho;
❑ 4 times de modo ágil e 4 times rodando dessa nova maneira;
❑ No primeiro mês tivemos uma queda na produtividade em 2 times que
estavam entrando nessa nova forma de desenvolvimento;
❑ No segundo mês outros dois times deixaram de entregar a sprint;
❑ 3 mês a redução de retorno dos pacotes aplicados em PRD desses 4 times
foi de 100%;
❑ Escalamos para os demais times, hoje o desenvolvimento é todo voltado a
teste.
Case de sucesso
OBRIGADO!

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

E so mais um campinho na tela
E so mais um campinho na telaE so mais um campinho na tela
E so mais um campinho na tela
 
Qualidade do início ao fim
Qualidade do início ao fimQualidade do início ao fim
Qualidade do início ao fim
 
Pipelines para CI/CD com kubernetes - Entregue valor ao cliente
Pipelines para CI/CD com kubernetes - Entregue valor ao clientePipelines para CI/CD com kubernetes - Entregue valor ao cliente
Pipelines para CI/CD com kubernetes - Entregue valor ao cliente
 
A experiência da AGCO ao adotar o BDD em seus projetos: uma experiência excit...
A experiência da AGCO ao adotar o BDD em seus projetos: uma experiência excit...A experiência da AGCO ao adotar o BDD em seus projetos: uma experiência excit...
A experiência da AGCO ao adotar o BDD em seus projetos: uma experiência excit...
 
Da Integração Contínua à Entrega Contínua apenas com ferramentas open-source
Da Integração Contínua à Entrega Contínua apenas com ferramentas open-sourceDa Integração Contínua à Entrega Contínua apenas com ferramentas open-source
Da Integração Contínua à Entrega Contínua apenas com ferramentas open-source
 
Vamos falar de DevOps?
Vamos falar de DevOps?Vamos falar de DevOps?
Vamos falar de DevOps?
 
DevQA - Da zona de conforto ao comprometimento com a Qualidade
DevQA - Da zona de conforto ao comprometimento com a QualidadeDevQA - Da zona de conforto ao comprometimento com a Qualidade
DevQA - Da zona de conforto ao comprometimento com a Qualidade
 
BDD - Behaviour Driven Development
BDD - Behaviour Driven DevelopmentBDD - Behaviour Driven Development
BDD - Behaviour Driven Development
 
Facilitando o desenvolvimento orientado a testes em aplicações PHP
Facilitando o desenvolvimento orientado a testes em aplicações PHPFacilitando o desenvolvimento orientado a testes em aplicações PHP
Facilitando o desenvolvimento orientado a testes em aplicações PHP
 
TDD
TDDTDD
TDD
 
Como aplicar práticas DevOps em um sistema monólito
Como aplicar práticas DevOps em um sistema monólito Como aplicar práticas DevOps em um sistema monólito
Como aplicar práticas DevOps em um sistema monólito
 
WTM - Workshop Agile Testing
WTM - Workshop Agile TestingWTM - Workshop Agile Testing
WTM - Workshop Agile Testing
 
Lean software testing
Lean software testing Lean software testing
Lean software testing
 
Agile Testing - Qualidade do Discovery ao Deploy
Agile Testing - Qualidade do Discovery ao DeployAgile Testing - Qualidade do Discovery ao Deploy
Agile Testing - Qualidade do Discovery ao Deploy
 
Desenvolvimento de software: Mundo ideal x Mundo real
Desenvolvimento de software: Mundo ideal x Mundo realDesenvolvimento de software: Mundo ideal x Mundo real
Desenvolvimento de software: Mundo ideal x Mundo real
 
Desenvolvimento de software mundo ideal x mundo real
Desenvolvimento de software  mundo ideal x mundo realDesenvolvimento de software  mundo ideal x mundo real
Desenvolvimento de software mundo ideal x mundo real
 
Apresentação inícial testes ágeis
Apresentação inícial testes ágeisApresentação inícial testes ágeis
Apresentação inícial testes ágeis
 
Testes ágeis: saindo da zona de conforto
Testes ágeis: saindo da zona de confortoTestes ágeis: saindo da zona de conforto
Testes ágeis: saindo da zona de conforto
 
Intro a Testes Automatizados
Intro a Testes AutomatizadosIntro a Testes Automatizados
Intro a Testes Automatizados
 
Do regresso ao progresso: automação de testes em aplicativos mobile
Do regresso ao progresso: automação de testes em aplicativos mobileDo regresso ao progresso: automação de testes em aplicativos mobile
Do regresso ao progresso: automação de testes em aplicativos mobile
 

Semelhante a Desenvolvimento orientado a testes

Desenvolvimento Guiado por Testes
Desenvolvimento Guiado por TestesDesenvolvimento Guiado por Testes
Desenvolvimento Guiado por Testes
elliando dias
 
Como funciona uma empresa ágil de desenvolvimento de software
Como funciona uma empresa ágil de desenvolvimento de softwareComo funciona uma empresa ágil de desenvolvimento de software
Como funciona uma empresa ágil de desenvolvimento de software
Elvis Lima
 

Semelhante a Desenvolvimento orientado a testes (20)

Desenvolvimento Guiado por Testes
Desenvolvimento Guiado por TestesDesenvolvimento Guiado por Testes
Desenvolvimento Guiado por Testes
 
Treinamento Testes Unitários - parte 1
Treinamento Testes Unitários - parte 1Treinamento Testes Unitários - parte 1
Treinamento Testes Unitários - parte 1
 
Como integrar um Agile Tester no seu time
Como integrar um Agile Tester no seu timeComo integrar um Agile Tester no seu time
Como integrar um Agile Tester no seu time
 
Indo além dos testes de classes com BDD (Behavior-Driven Development) - Inter...
Indo além dos testes de classes com BDD (Behavior-Driven Development) - Inter...Indo além dos testes de classes com BDD (Behavior-Driven Development) - Inter...
Indo além dos testes de classes com BDD (Behavior-Driven Development) - Inter...
 
Testes Ágeis - Quallis
Testes Ágeis - QuallisTestes Ágeis - Quallis
Testes Ágeis - Quallis
 
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)
 
TDC 2016 Trilha Testes - Floripa
TDC 2016 Trilha Testes - FloripaTDC 2016 Trilha Testes - Floripa
TDC 2016 Trilha Testes - Floripa
 
Teste Driven Development
Teste Driven DevelopmentTeste Driven Development
Teste Driven Development
 
Os Benefícios dos testes no desenvolvimento de software
Os Benefícios dos testes no desenvolvimento de softwareOs Benefícios dos testes no desenvolvimento de software
Os Benefícios dos testes no desenvolvimento de software
 
Tdd On Rails
Tdd On RailsTdd On Rails
Tdd On Rails
 
BDD (Behavior-Driven Development) - GDG-SP - Julho/2016
BDD (Behavior-Driven Development) - GDG-SP - Julho/2016BDD (Behavior-Driven Development) - GDG-SP - Julho/2016
BDD (Behavior-Driven Development) - GDG-SP - Julho/2016
 
TDD em 220V
TDD em 220VTDD em 220V
TDD em 220V
 
InterCon 2017 - Indo além dos testes de classes com BDD (Behavior-Driven Deve...
InterCon 2017 - Indo além dos testes de classes com BDD (Behavior-Driven Deve...InterCon 2017 - Indo além dos testes de classes com BDD (Behavior-Driven Deve...
InterCon 2017 - Indo além dos testes de classes com BDD (Behavior-Driven Deve...
 
Testes Automatizados
Testes AutomatizadosTestes Automatizados
Testes Automatizados
 
Como funciona uma empresa ágil de desenvolvimento de software
Como funciona uma empresa ágil de desenvolvimento de softwareComo funciona uma empresa ágil de desenvolvimento de software
Como funciona uma empresa ágil de desenvolvimento de software
 
Sobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis UberlândiaSobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis Uberlândia
 
Conceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidadeConceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidade
 
Metodologias Ageis
Metodologias AgeisMetodologias Ageis
Metodologias Ageis
 
Behavior-Driven Development (BDD) - QA Ninja Conf 2016
Behavior-Driven Development (BDD) - QA Ninja Conf 2016Behavior-Driven Development (BDD) - QA Ninja Conf 2016
Behavior-Driven Development (BDD) - QA Ninja Conf 2016
 
Instituto Stela S&T#001, Projeto de software com testes unitários
Instituto Stela S&T#001, Projeto de software com testes unitáriosInstituto Stela S&T#001, Projeto de software com testes unitários
Instituto Stela S&T#001, Projeto de software com testes unitários
 

Desenvolvimento orientado a testes

  • 1. DESENVOLVIMENTO ORIENTADO A TESTE, ISSO FUNCIONA MESMO?
  • 5. Testes Unitários  Com isso testamos todas as possibilidades?  Testar é mais rápido que codificar?  Quando parar de testar e começar a codificar?
  • 6. TDD Criar um teste que falha Criar um código que funcione Refatore Tarefa  O TDD nasceu lá em 2003 por Kent Beck;  Escrevemos um Teste que inicialmente não passa (Red);  Adicionamos uma nova funcionalidade do sistema;  Fazemos o Teste passar (Green);  Refatoramos o código da nova funcionalidade (Refactoring);  Escrevemos o próximo Teste.
  • 7. ATDD Um analista de qualidade e um programador que colaboram juntos para atingir a meta da equipe, em relação a automação de teste, agregam muito valor quando iniciam a abordagem do ATDD. Markus Gärtner ❑ Debater ❑ Refinar ❑ Desenvolver ❑ Revisar Ciclo TDD Vermelho Item (Revisar) Debater Refinar Historia Demo Desenvolver Ciclo de Desenvolvimento Orientado a Teste de Aceitação (ATDD)
  • 8. Desenvolvimento orientado a Testes ❑ Debater (Product Backlog); ❑ Refinar (Reunião de refinamento, já criando os esqueletos dos testes); ❑ Planejar (Planejar testes e detalhamento dos BDD’s); ❑ Desenvolver (utilizar uma gama maior de testes unitários e uma menor de aceitação); ❑ Revisar (Reveiw). Debater Refinar Product backlog Revisar Desenvolver Desenvolvimento Orientado a Teste Testes Testes unitário Testes aceitação Planejar
  • 9. Debater (Product Backlog) ❑ Presença do QA na composição do backlog ❑ Aprofundar os critérios de aceite ❑ Auxilio com visão técnica Debater Product backlog
  • 10. Refinar ❑ Inserir critérios de aceitação técnicos ❑ Derivação dos tipos de testes (Unitários x Aceite) ❑ Mapeamento de risco Refinamento Testes
  • 11. Planejar ❑ Apresentar cobertura dos testes ❑ Detalhamento dos BDD’s voltados para aceitação ❑ Auxiliar Dev’s com visão de negócios Planejar
  • 12. Desenvolver ❑ Criar testes antes de escrever o código ❑ Pair programming Dev e QA ❑ Maior gama de testes unitários ❑ Menor gama de testes de aceitação ❑ Evita o ˜CascÁgil˜ Desenvolvimento Testes unitário Testes aceitação
  • 13. Revisar ❑ Adiantar a homologação das demandas ❑ Assertividade das entregas Revisar
  • 14. ❑ E-commerce de Vinho; ❑ 4 times de modo ágil e 4 times rodando dessa nova maneira; ❑ No primeiro mês tivemos uma queda na produtividade em 2 times que estavam entrando nessa nova forma de desenvolvimento; ❑ No segundo mês outros dois times deixaram de entregar a sprint; ❑ 3 mês a redução de retorno dos pacotes aplicados em PRD desses 4 times foi de 100%; ❑ Escalamos para os demais times, hoje o desenvolvimento é todo voltado a teste. Case de sucesso