SlideShare uma empresa Scribd logo
1 de 6
#VSSUMMIT
Cleiton Felipe de Moraes
Entenda o que é BDD
Analista Desenvolvedor
SoroCódigos / DevBrasil
#VSSUMMIT
BDD - Behaviour-Driven Development
Specflow - Ferramenta para auxiliar na aplicação do BDD.
O que é BDD e Specflow?
#VSSUMMIT
Behaviour-Driven Development
Tecnologia e Negócios falando a mesma língua!
Seu Projeto
Funcionalidades
Cenário
Passos
Step Definitions
Codificação
Bibliotecas de Automação
#VSSUMMIT
Demos
#VSSUMMIT
Dúvidas?
#VSSUMMIT
@Cleiton_felipe
Cleiton.felipe@yahoo.com.br
Obrigado!

Mais conteúdo relacionado

Mais procurados

antonio inacio ferraz-lógica de programação-técnico em eletronica/agropecuári...
antonio inacio ferraz-lógica de programação-técnico em eletronica/agropecuári...antonio inacio ferraz-lógica de programação-técnico em eletronica/agropecuári...
antonio inacio ferraz-lógica de programação-técnico em eletronica/agropecuári...ANTONIO INACIO FERRAZ
 
Agilidade NÃO é para desenvolvedores! - Agile Brazil 2018
Agilidade NÃO é para desenvolvedores! - Agile Brazil 2018Agilidade NÃO é para desenvolvedores! - Agile Brazil 2018
Agilidade NÃO é para desenvolvedores! - Agile Brazil 2018Wagner Mendes Voltz Fusca
 
Lógica De Programação - Apresentação
Lógica De Programação - ApresentaçãoLógica De Programação - Apresentação
Lógica De Programação - ApresentaçãoSOS COmputadores
 
Vaga para programador
Vaga para programadorVaga para programador
Vaga para programadorPaulo Mattos
 
Simplificando o Build do Android
Simplificando o Build do AndroidSimplificando o Build do Android
Simplificando o Build do AndroidDaniela Schwab
 
Tecnologias & Desafios: a Vida de uma Front-ender na Europa
Tecnologias & Desafios: a Vida de uma Front-ender na EuropaTecnologias & Desafios: a Vida de uma Front-ender na Europa
Tecnologias & Desafios: a Vida de uma Front-ender na EuropaTatiane Aguirres Nogueira
 
cpbr5 desenvolvimento de aplicativos mobile nativos com javascript
cpbr5 desenvolvimento de aplicativos mobile nativos com javascriptcpbr5 desenvolvimento de aplicativos mobile nativos com javascript
cpbr5 desenvolvimento de aplicativos mobile nativos com javascriptDiego Santos
 
Domain driven design na Prática
Domain driven design na PráticaDomain driven design na Prática
Domain driven design na PráticaDouglas Aguiar
 
Lidando com Equipes de Desenvolvimento
Lidando com Equipes de DesenvolvimentoLidando com Equipes de Desenvolvimento
Lidando com Equipes de Desenvolvimento4Soft
 
Como continuar aprendendo sobre Robótica, STEAM e Tecnologias durante a pandemia
Como continuar aprendendo sobre Robótica, STEAM e Tecnologias durante a pandemiaComo continuar aprendendo sobre Robótica, STEAM e Tecnologias durante a pandemia
Como continuar aprendendo sobre Robótica, STEAM e Tecnologias durante a pandemiaSavanna Denega
 
Desenvolvimento com windows 8.1
Desenvolvimento com windows 8.1Desenvolvimento com windows 8.1
Desenvolvimento com windows 8.1Alvaro Brognoli
 
Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...
Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...
Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...Wagner Mendes Voltz Fusca
 
TDC2016POA | Trilha Ruby - Hora da aventura! Vamos melhorar seu código?!?
TDC2016POA | Trilha Ruby - Hora da aventura! Vamos melhorar seu código?!?TDC2016POA | Trilha Ruby - Hora da aventura! Vamos melhorar seu código?!?
TDC2016POA | Trilha Ruby - Hora da aventura! Vamos melhorar seu código?!?tdc-globalcode
 

Mais procurados (19)

antonio inacio ferraz-lógica de programação-técnico em eletronica/agropecuári...
antonio inacio ferraz-lógica de programação-técnico em eletronica/agropecuári...antonio inacio ferraz-lógica de programação-técnico em eletronica/agropecuári...
antonio inacio ferraz-lógica de programação-técnico em eletronica/agropecuári...
 
Piadas de CSS e Javascript
Piadas de CSS e JavascriptPiadas de CSS e Javascript
Piadas de CSS e Javascript
 
#Qualidade decodigo
#Qualidade decodigo#Qualidade decodigo
#Qualidade decodigo
 
Agilidade NÃO é para desenvolvedores! - Agile Brazil 2018
Agilidade NÃO é para desenvolvedores! - Agile Brazil 2018Agilidade NÃO é para desenvolvedores! - Agile Brazil 2018
Agilidade NÃO é para desenvolvedores! - Agile Brazil 2018
 
Lógica De Programação - Apresentação
Lógica De Programação - ApresentaçãoLógica De Programação - Apresentação
Lógica De Programação - Apresentação
 
Vaga para programador
Vaga para programadorVaga para programador
Vaga para programador
 
Desenvolvimento BDD
Desenvolvimento BDDDesenvolvimento BDD
Desenvolvimento BDD
 
Xamarin UI Test + Specflow TDC
Xamarin UI Test + Specflow TDCXamarin UI Test + Specflow TDC
Xamarin UI Test + Specflow TDC
 
Simplificando o Build do Android
Simplificando o Build do AndroidSimplificando o Build do Android
Simplificando o Build do Android
 
Tecnologias & Desafios: a Vida de uma Front-ender na Europa
Tecnologias & Desafios: a Vida de uma Front-ender na EuropaTecnologias & Desafios: a Vida de uma Front-ender na Europa
Tecnologias & Desafios: a Vida de uma Front-ender na Europa
 
cpbr5 desenvolvimento de aplicativos mobile nativos com javascript
cpbr5 desenvolvimento de aplicativos mobile nativos com javascriptcpbr5 desenvolvimento de aplicativos mobile nativos com javascript
cpbr5 desenvolvimento de aplicativos mobile nativos com javascript
 
Domain driven design na Prática
Domain driven design na PráticaDomain driven design na Prática
Domain driven design na Prática
 
Lidando com Equipes de Desenvolvimento
Lidando com Equipes de DesenvolvimentoLidando com Equipes de Desenvolvimento
Lidando com Equipes de Desenvolvimento
 
Como continuar aprendendo sobre Robótica, STEAM e Tecnologias durante a pandemia
Como continuar aprendendo sobre Robótica, STEAM e Tecnologias durante a pandemiaComo continuar aprendendo sobre Robótica, STEAM e Tecnologias durante a pandemia
Como continuar aprendendo sobre Robótica, STEAM e Tecnologias durante a pandemia
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
 
2 meetup. sprint architecture
2 meetup. sprint architecture2 meetup. sprint architecture
2 meetup. sprint architecture
 
Desenvolvimento com windows 8.1
Desenvolvimento com windows 8.1Desenvolvimento com windows 8.1
Desenvolvimento com windows 8.1
 
Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...
Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...
Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...
 
TDC2016POA | Trilha Ruby - Hora da aventura! Vamos melhorar seu código?!?
TDC2016POA | Trilha Ruby - Hora da aventura! Vamos melhorar seu código?!?TDC2016POA | Trilha Ruby - Hora da aventura! Vamos melhorar seu código?!?
TDC2016POA | Trilha Ruby - Hora da aventura! Vamos melhorar seu código?!?
 

Mais de Cleiton Felipe Moraes

Minha App com Analise de Sentimentos...Pode isso?
Minha App com Analise de Sentimentos...Pode isso?Minha App com Analise de Sentimentos...Pode isso?
Minha App com Analise de Sentimentos...Pode isso?Cleiton Felipe Moraes
 
Utilizando BDD com Specflow e Selenium para testes Web MSP Tech Day Curitiba
Utilizando BDD com Specflow e Selenium para testes Web MSP Tech Day CuritibaUtilizando BDD com Specflow e Selenium para testes Web MSP Tech Day Curitiba
Utilizando BDD com Specflow e Selenium para testes Web MSP Tech Day CuritibaCleiton Felipe Moraes
 
Entendendo o que é o Xamarin e desenvolvendo sua primeira app - Meetup Xamari...
Entendendo o que é o Xamarin e desenvolvendo sua primeira app - Meetup Xamari...Entendendo o que é o Xamarin e desenvolvendo sua primeira app - Meetup Xamari...
Entendendo o que é o Xamarin e desenvolvendo sua primeira app - Meetup Xamari...Cleiton Felipe Moraes
 
Reconhecimento de voz no Windows Phone
Reconhecimento de voz no Windows PhoneReconhecimento de voz no Windows Phone
Reconhecimento de voz no Windows PhoneCleiton Felipe Moraes
 

Mais de Cleiton Felipe Moraes (11)

Xamarin UI Test + BDD Specflow
Xamarin UI Test + BDD SpecflowXamarin UI Test + BDD Specflow
Xamarin UI Test + BDD Specflow
 
Criando uma Arquitetura Testável
Criando uma Arquitetura TestávelCriando uma Arquitetura Testável
Criando uma Arquitetura Testável
 
Minha App com Analise de Sentimentos...Pode isso?
Minha App com Analise de Sentimentos...Pode isso?Minha App com Analise de Sentimentos...Pode isso?
Minha App com Analise de Sentimentos...Pode isso?
 
Utilizando BDD com Specflow e Selenium para testes Web MSP Tech Day Curitiba
Utilizando BDD com Specflow e Selenium para testes Web MSP Tech Day CuritibaUtilizando BDD com Specflow e Selenium para testes Web MSP Tech Day Curitiba
Utilizando BDD com Specflow e Selenium para testes Web MSP Tech Day Curitiba
 
Entendendo o que é o Xamarin e desenvolvendo sua primeira app - Meetup Xamari...
Entendendo o que é o Xamarin e desenvolvendo sua primeira app - Meetup Xamari...Entendendo o que é o Xamarin e desenvolvendo sua primeira app - Meetup Xamari...
Entendendo o que é o Xamarin e desenvolvendo sua primeira app - Meetup Xamari...
 
BDD com Xamarin UI Test e Specflow
BDD com Xamarin UI Test e SpecflowBDD com Xamarin UI Test e Specflow
BDD com Xamarin UI Test e Specflow
 
Xamarin UI Test e VS Mobile Center
Xamarin UI Test e VS Mobile CenterXamarin UI Test e VS Mobile Center
Xamarin UI Test e VS Mobile Center
 
Entendendo o Xamarin UiTest no TDC
Entendendo o Xamarin UiTest no TDCEntendendo o Xamarin UiTest no TDC
Entendendo o Xamarin UiTest no TDC
 
Azure blob xamarin-tdc2016
Azure blob xamarin-tdc2016Azure blob xamarin-tdc2016
Azure blob xamarin-tdc2016
 
Reconhecimento de voz no Windows Phone
Reconhecimento de voz no Windows PhoneReconhecimento de voz no Windows Phone
Reconhecimento de voz no Windows Phone
 
Desenvolvimento para windows phone
Desenvolvimento para windows phoneDesenvolvimento para windows phone
Desenvolvimento para windows phone
 

BDD e Specflow - Entenda o que é e como aplicar

Notas do Editor

  1. BDD é sigla para Behaviour-Driven Development. Trata-se de uma evolução do TDD e do “Acceptance Test Driven Planing”. De forma explícita, BDD relaciona “Test-Driven Development” com “Domain driven design” tornando a relação entre essas duas abordagens consideravelmente mais evidente. BDD colabora para que o desenvolvimento foque na entrega de valor, através da formação de um vocabulário comum, reduzindo a distância entre “Negócio” e Tecnologia. BDD está fundamentada em três princípios simples: Negócio e Tecnologia deveriam “falar” sobre um sistema da mesma forma; Qualquer sistema deveria ter um valor identificável e verificável para o “negócio”; Análise, design e planejamento precoce tem, sempre, retorno questionável.
  2. BDD expressa mais a parte de negócio do que tecnologia Compete ao “negócio” a definição de: Features – representam, em alto nível, os principais características do sistema – correspondem a uma descrição resumida dos “valores” que estamos entregando (ex: autenticação de usuários, cadastro de clientes, cálculo de imposto, emissão de nota); Cenários – descrições de “casos de uso”, com pré-requisitos, ações e resultado esperado (ex: cadastro de novo usuário, usuário esqueceu senha, etc.) Passos/Etapas (steps) – interações entre agente externo (usuário ou sistema) e resultado esperado para um dado cenário. Compete ao “TI”: Definições para etapas (Step definitions) – correspondências, usando um framework de testes, entre testes de unidade e etapas definidas pelo negócio; Código – implementação efetiva de código para atender as definições do negócio; Biblioteca de automação (opcional) – para simular, caso necessário, ações de um usuário na interface do sistema (WatiN, por exemplo). BDD garante “documentação viva” BDD associa os benefícios de uma documentação formal, escrita e mantida pelo “negócio”, com testes de unidade que “demonstram” que essa documentação é efetivamente válida. Na prática, isso garante que a documentação deixa de ser um registro estático, que se converte em algo gradualmente ultrapassado, em um artefato “vivo” que reflete constantemente o estado atual de um projeto.