SlideShare a Scribd company logo
Behaviour-Driven Development
  especificando software de forma ágil



        Hugo Lopes Tavares
     Universidade Cândido Mendes - Campos
                 Novembro 2009
Por que ter
                        ?
especificações de software
http://upload.wikimedia.org/wikipedia/commons/0/08/Modelo_em_cascata.png
http://www.flickr.com/photos/toastforbrekkie/3488847960
http://www.flickr.com/photos/wongjunhao/2189540204
testes manuais
http://www.flickr.com/photos/vox/3966754898
http://www.flickr.com/photos/rwphoto/3476071029
http://www.flickr.com/photos/slipstreamblue/2677206060
Behaviour-Driven Development: escrevendo especificações ágeis
Behaviour-Driven Development: escrevendo especificações ágeis
O que é BDD
              ?
?
Como fazer BDD
  no dia-a-dia
Behaviour-Driven Development: escrevendo especificações ágeis
http://www.flickr.com/photos/jnicho02/2827250133
stakeholder + dev
Behaviour-Driven Development: escrevendo especificações ágeis
Behaviour-Driven Development: escrevendo especificações ágeis
exemplos
http://www.agileprogrammer.com/uploads/bradwils/red_2Dgreen_2Drefactor.png
Mock Objects
um caso de falha:
                                                   pyhistorian




http://z.about.com/d/chemistry/1/0/G/f/stinkbomb.jpg
http://www.flickr.com/photos/wwworks/3337409383
YAGNI
http://www.flickr.com/photos/editor/172690560/
flexibilidade
http://www.flickr.com/photos/myelectricsheep/241058566
COLABORAÇÃO




http://www.flickr.com/photos/visionwithin/513293155
Behaviour-Driven Development: escrevendo especificações ágeis
Behaviour-Driven Development: escrevendo especificações ágeis
http://www.informit.com/ShowCover.aspx?isbn=0321125215
Behaviour-Driven Development: escrevendo especificações ágeis
Ferramentas




http://www.flickr.com/photos/m2w2/191545978
pyhistorian
 pyccuracy
   Freshen
   pyCukes
   pyMock
   Mockito
   Ludibrio
Should-DSL
Cucumber
      Webrat
       RSpec
  Remarkable
       Mocha
  Factory Girl
    Machinist
Object Daddy
JBehave 2.0
     Easyb
   Mockito
 EasyMock
     JMock
  Hamcrest
      JUnit
    TestNG
Cuke4nuke
          Specflow
              Nspec
           Nbehave
              Mspec
          Specunit
Cucubmer + IronRuby
Obrigado!
       Email: hltbra@gmail.com
           Twitter: @hltbra
 Github: http://hugolt.wordpress.com
    Blog: http://github.com/hugobr

More Related Content

PDF
Play framework 2.0 Introduction
jorgen99
 
PPT
Presentation Blogging Panel
Beth Kanter
 
PDF
Atomic Design という名のデザイン整理術
Yusuke Goto
 
PDF
A Potpourri Of Web Tools
Carla Arena
 
PDF
Redmine - a project management system
Caesar Chi
 
PDF
Web Trends to Watch in 2014
David King
 
PDF
Make your Website UX ROCK
David King
 
PDF
What you don't know will hurt you: Designing with and for existing content
Sara Wachter-Boettcher
 
Play framework 2.0 Introduction
jorgen99
 
Presentation Blogging Panel
Beth Kanter
 
Atomic Design という名のデザイン整理術
Yusuke Goto
 
A Potpourri Of Web Tools
Carla Arena
 
Redmine - a project management system
Caesar Chi
 
Web Trends to Watch in 2014
David King
 
Make your Website UX ROCK
David King
 
What you don't know will hurt you: Designing with and for existing content
Sara Wachter-Boettcher
 

What's hot (20)

PDF
Managing the Content Process
Sara Wachter-Boettcher
 
PPTX
Technology Careers v2.0 SP1 Ultimate Edition
John Bristowe
 
PDF
Orchestrating Content—FOWD NYC
Sara Wachter-Boettcher
 
PDF
Automação de testes funcionais com Python e Mechanize
Robson Agapito Correa
 
PDF
Changing Content, Changing Culture
Sara Wachter-Boettcher
 
PDF
Flexible Content Requires Future-Ready Organizations
Sara Wachter-Boettcher
 
PPT
Ttyfu v7-angelpadorg
Rick Boardman
 
PPTX
Indesign tutorials
Jackie Scott
 
PPTX
20 Unterrichtswerkzeuge die Sie noch nicht kennen
Fachhochschule Burgenland GmbH
 
PPT
Business Communications Week 10 Ethan Chazin
Ethan Chazin MBA
 
PDF
Bazata-Jaret-pcp-1511
jjbazata
 
PDF
Change, Adaptation, and Revolutions in Libraries
David King
 
DOC
Writing Resume Practice
mhernandez186
 
PDF
I tried to dockerize my app but I had to PaaS
Jorge Morales
 
PDF
Automating all the wrong things - You Gotta Love Frontend Keynote
Christian Heilmann
 
PDF
Orchestrating Content
Sara Wachter-Boettcher
 
PDF
Fix price fix scope fix date-pecha_kuchas-journeeagile2014
Gilles Scokart
 
PPTX
Games, Develop & Html5 for BlackBerry PlayBook
Sergio Brito
 
ODP
NROC Meeting 2011 - Embracing OER
Ahrash Bissell
 
PPT
Tech For Chairs Slides
Eric Castro
 
Managing the Content Process
Sara Wachter-Boettcher
 
Technology Careers v2.0 SP1 Ultimate Edition
John Bristowe
 
Orchestrating Content—FOWD NYC
Sara Wachter-Boettcher
 
Automação de testes funcionais com Python e Mechanize
Robson Agapito Correa
 
Changing Content, Changing Culture
Sara Wachter-Boettcher
 
Flexible Content Requires Future-Ready Organizations
Sara Wachter-Boettcher
 
Ttyfu v7-angelpadorg
Rick Boardman
 
Indesign tutorials
Jackie Scott
 
20 Unterrichtswerkzeuge die Sie noch nicht kennen
Fachhochschule Burgenland GmbH
 
Business Communications Week 10 Ethan Chazin
Ethan Chazin MBA
 
Bazata-Jaret-pcp-1511
jjbazata
 
Change, Adaptation, and Revolutions in Libraries
David King
 
Writing Resume Practice
mhernandez186
 
I tried to dockerize my app but I had to PaaS
Jorge Morales
 
Automating all the wrong things - You Gotta Love Frontend Keynote
Christian Heilmann
 
Orchestrating Content
Sara Wachter-Boettcher
 
Fix price fix scope fix date-pecha_kuchas-journeeagile2014
Gilles Scokart
 
Games, Develop & Html5 for BlackBerry PlayBook
Sergio Brito
 
NROC Meeting 2011 - Embracing OER
Ahrash Bissell
 
Tech For Chairs Slides
Eric Castro
 
Ad

Viewers also liked (9)

PDF
Python Packaging: Passado, Presente e Futuro
Hugo Lopes Tavares
 
PDF
Collaborative Coding: Git + Github (NSI Tech Talks)
Hugo Lopes Tavares
 
ODP
The English Alphabet
aliciamv700
 
ODP
L O N D O N S I G H T
aliciamv700
 
PPS
Pinturas de robert duncan
Anjovison .
 
PDF
Quero ser programador! #comofas?
Hugo Lopes Tavares
 
PDF
Collaborative Coding: Git + Github
Hugo Lopes Tavares
 
PDF
Pyramid - BDD em Python
Hugo Lopes Tavares
 
PDF
Behaviour-Driven Development (BDD) em Python
Hugo Lopes Tavares
 
Python Packaging: Passado, Presente e Futuro
Hugo Lopes Tavares
 
Collaborative Coding: Git + Github (NSI Tech Talks)
Hugo Lopes Tavares
 
The English Alphabet
aliciamv700
 
L O N D O N S I G H T
aliciamv700
 
Pinturas de robert duncan
Anjovison .
 
Quero ser programador! #comofas?
Hugo Lopes Tavares
 
Collaborative Coding: Git + Github
Hugo Lopes Tavares
 
Pyramid - BDD em Python
Hugo Lopes Tavares
 
Behaviour-Driven Development (BDD) em Python
Hugo Lopes Tavares
 
Ad

Similar to Behaviour-Driven Development: escrevendo especificações ágeis (20)

PPTX
A DevOps Discussion
Josh Gillespie
 
PDF
Arduino Project
Almir Mendes
 
PPTX
Don't be a Digital Dinosaur - Design for the Space Between
Samantha Starmer
 
PDF
Arduino Project - Ciclo de palestras CEET Vasco Coutinho
Almir Mendes
 
PDF
Developing for Mobile
Remy Sharp
 
PPT
A Path for Presentations
Emory Maiden
 
PPTX
Create Successful Cross Channel Experiences - IA Summit 2011
Samantha Starmer
 
PDF
Just Too Late
katzj
 
PDF
Projeto Arduino - Hardware para fazer coisas legais - FOCAI
Almir Mendes
 
PPTX
Don't a Digital Dinosaur - Web 2.0 2011
Samantha Starmer
 
PPTX
The Future of Design is Not Just the Web - Web Visions Workshop 2011
Samantha Starmer
 
PDF
Mobile Web Speed Bumps
Nicholas Zakas
 
PDF
Christian Heilmann's 'State of the Browser in 2011'
Open Journalism on the Open Web
 
PDF
The Importance of Storytelling in Web Design, WordCamp Miami 2013
Denise Jacobs
 
PPT
Creating User Friendly Joomla! Websites and Forms [English]
ThemePartner
 
PDF
LeapMotion for Web with React and Flux
Laura Moore
 
PPTX
O que tu queres?
m Peixoto
 
PPTX
Introduction to HTML5 & CSS3
Pradeep Varadaraja Banavara
 
PDF
Play withmultimedia mac
Maso Lin
 
PPTX
10 Tips
ldizon4
 
A DevOps Discussion
Josh Gillespie
 
Arduino Project
Almir Mendes
 
Don't be a Digital Dinosaur - Design for the Space Between
Samantha Starmer
 
Arduino Project - Ciclo de palestras CEET Vasco Coutinho
Almir Mendes
 
Developing for Mobile
Remy Sharp
 
A Path for Presentations
Emory Maiden
 
Create Successful Cross Channel Experiences - IA Summit 2011
Samantha Starmer
 
Just Too Late
katzj
 
Projeto Arduino - Hardware para fazer coisas legais - FOCAI
Almir Mendes
 
Don't a Digital Dinosaur - Web 2.0 2011
Samantha Starmer
 
The Future of Design is Not Just the Web - Web Visions Workshop 2011
Samantha Starmer
 
Mobile Web Speed Bumps
Nicholas Zakas
 
Christian Heilmann's 'State of the Browser in 2011'
Open Journalism on the Open Web
 
The Importance of Storytelling in Web Design, WordCamp Miami 2013
Denise Jacobs
 
Creating User Friendly Joomla! Websites and Forms [English]
ThemePartner
 
LeapMotion for Web with React and Flux
Laura Moore
 
O que tu queres?
m Peixoto
 
Introduction to HTML5 & CSS3
Pradeep Varadaraja Banavara
 
Play withmultimedia mac
Maso Lin
 
10 Tips
ldizon4
 

Recently uploaded (20)

PDF
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
PDF
Beyond Automation: The Role of IoT Sensor Integration in Next-Gen Industries
Rejig Digital
 
PDF
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
PDF
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PDF
Tea4chat - another LLM Project by Kerem Atam
a0m0rajab1
 
PDF
Software Development Company | KodekX
KodekX
 
PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
PDF
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
PDF
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
PDF
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
PPTX
Coupa-Overview _Assumptions presentation
annapureddyn
 
PPT
Coupa-Kickoff-Meeting-Template presentai
annapureddyn
 
PDF
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
PDF
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
PDF
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
PDF
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
PDF
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
Beyond Automation: The Role of IoT Sensor Integration in Next-Gen Industries
Rejig Digital
 
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
Tea4chat - another LLM Project by Kerem Atam
a0m0rajab1
 
Software Development Company | KodekX
KodekX
 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
Coupa-Overview _Assumptions presentation
annapureddyn
 
Coupa-Kickoff-Meeting-Template presentai
annapureddyn
 
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 

Behaviour-Driven Development: escrevendo especificações ágeis