SlideShare une entreprise Scribd logo
1  sur  14
Télécharger pour lire hors ligne
@victorhg




Largamos o Cucumber
              http://www.flickr.com/photos/stuartpilbrow/3687751382/
Falando sobre cucumber!




“BDD outside in” em 2011
Bom e velho cucumber

 
 Accessing website with true credentials
  When I am on the login page
   And I fill in "email" with "bla@email.com"
   And I fill in "password" with "qwerty"
   And I click button "Login"
  Then I should see "Olá, bla@email.com"



                 smell gerado pelo web_steps.rb
Text
Não é esse o ponto!!
+1 Camada de abstração
                       Mais código para manter

          Clientes
         Duplicando código em linguagem natural


    esperam LER a
     especificação
Clientes não
     querem escrever testes!
Alcançando Valor com
      Cucumber
Acessing website with true
credentials:
 When I am on the login page
  And I use my credentials
 Then I should see a welcome
 message
Manutenção continuou um
            saco!
     Duplicando
  rspecs & cucumber
        steps
  Refactoring não é
      perfeito
Cada vez menos testes
  de aceitação com
      cucumber

                        source
Mantendo “Valor”
User accessing website
  In order to easy accessing process, As a user
  I can use my facebook account to connect

 When a visitant doesn't have a website account
   Accessing the registration process with facebook
     Should automatically fill in his personal data
     Should not present the password information
rspec + capybara
specs/acceptance/
           facebook_integration.rb
describe "User acessing website", """
  In order to easy accessing process
  As a user
  I can use a facebook account to connect with website""" do
    
   context "When a user doesn't have a go2doc account" do
     context "Acessing registration process with facebook" do
        before do
        end
        it "Should automatically fill in personal data" do
          (CODIGO RSPEC)
        end
        it "Should not present password information" do
          (CODIGO RSPEC)
        end
      end
    end                   https://gist.github.com/2992243
end
Given(:stack) { stack_with(initial_contents) }
  context "when empty" do
    Given(:initial_contents) { [] }
    Then { stack.depth.should == 0 }

    context "when pushing" do
      When { stack.push(:an_item) }

      Then { stack.depth.should == 1 }
      Then { stack.top.should == :an_item }
    end
  end


https://github.com/jimweirich/rspec-given
feature "Articles", %q{
  In order to have an awesome blog
  As an author
  I want to create and manage articles
} do
  background do
    Article.create!(:title => 'One')
  end
  scenario "Article index" do
    visit '/articles'
    page.should have_content('One')
  end

end


https://github.com/cavalle/steak
No final, é
apenas ruby!
Obrigado!
@victorhg
www.Lambda3.com.br

Contenu connexe

Tendances

WordPress for Witches : WordPress 100
WordPress for Witches : WordPress 100WordPress for Witches : WordPress 100
WordPress for Witches : WordPress 100The Fiery Well, LLC
 
J309-14 Week One
J309-14 Week OneJ309-14 Week One
J309-14 Week Onekimbui
 
Web Design Basics for Kids: HTML & CSS
Web Design Basics for Kids: HTML & CSSWeb Design Basics for Kids: HTML & CSS
Web Design Basics for Kids: HTML & CSSAnnMarie Ppl
 
Haml, Sass and Compass for Sane Web Development
Haml, Sass and Compass for Sane Web DevelopmentHaml, Sass and Compass for Sane Web Development
Haml, Sass and Compass for Sane Web Developmentjeremyw
 
The Users are Restless
The Users are RestlessThe Users are Restless
The Users are RestlessTerry Ryan
 
The Present Future of OAuth
The Present Future of OAuthThe Present Future of OAuth
The Present Future of OAuthMichael Bleigh
 

Tendances (10)

Packages
PackagesPackages
Packages
 
WordPress for Witches : WordPress 100
WordPress for Witches : WordPress 100WordPress for Witches : WordPress 100
WordPress for Witches : WordPress 100
 
J309-14 Week One
J309-14 Week OneJ309-14 Week One
J309-14 Week One
 
Web Design Basics for Kids: HTML & CSS
Web Design Basics for Kids: HTML & CSSWeb Design Basics for Kids: HTML & CSS
Web Design Basics for Kids: HTML & CSS
 
Haml, Sass and Compass for Sane Web Development
Haml, Sass and Compass for Sane Web DevelopmentHaml, Sass and Compass for Sane Web Development
Haml, Sass and Compass for Sane Web Development
 
Password Reset Phish Campaign
Password Reset Phish CampaignPassword Reset Phish Campaign
Password Reset Phish Campaign
 
The Users are Restless
The Users are RestlessThe Users are Restless
The Users are Restless
 
Intro to jQuery
Intro to jQueryIntro to jQuery
Intro to jQuery
 
2_cucumber
2_cucumber2_cucumber
2_cucumber
 
The Present Future of OAuth
The Present Future of OAuthThe Present Future of OAuth
The Present Future of OAuth
 

En vedette

Métricas que importam Agile Brazil 2016
Métricas que importam   Agile Brazil 2016Métricas que importam   Agile Brazil 2016
Métricas que importam Agile Brazil 2016Victor Hugo Germano
 
10 Tips for Creating Great User Stories
10 Tips for Creating Great User Stories10 Tips for Creating Great User Stories
10 Tips for Creating Great User StoriesRoman Pichler
 
Become a Great Product Manager
Become a Great Product ManagerBecome a Great Product Manager
Become a Great Product ManagerRoman Pichler
 
Product Strategy and Product Success
Product Strategy and Product SuccessProduct Strategy and Product Success
Product Strategy and Product SuccessRoman Pichler
 

En vedette (7)

Clube de rh 17-07-2013 - remuneração estratégica
Clube de rh   17-07-2013 - remuneração estratégicaClube de rh   17-07-2013 - remuneração estratégica
Clube de rh 17-07-2013 - remuneração estratégica
 
Metricas para Times Ágeis
Metricas para Times ÁgeisMetricas para Times Ágeis
Metricas para Times Ágeis
 
Métricas que importam Agile Brazil 2016
Métricas que importam   Agile Brazil 2016Métricas que importam   Agile Brazil 2016
Métricas que importam Agile Brazil 2016
 
UX and Scrum
UX and ScrumUX and Scrum
UX and Scrum
 
10 Tips for Creating Great User Stories
10 Tips for Creating Great User Stories10 Tips for Creating Great User Stories
10 Tips for Creating Great User Stories
 
Become a Great Product Manager
Become a Great Product ManagerBecome a Great Product Manager
Become a Great Product Manager
 
Product Strategy and Product Success
Product Strategy and Product SuccessProduct Strategy and Product Success
Product Strategy and Product Success
 

Similaire à Largamos o cucumber

Enabling agile devliery through enabling BDD in PHP projects
Enabling agile devliery through enabling BDD in PHP projectsEnabling agile devliery through enabling BDD in PHP projects
Enabling agile devliery through enabling BDD in PHP projectsKonstantin Kudryashov
 
Integration Test With Cucumber And Webrat
Integration Test With Cucumber And WebratIntegration Test With Cucumber And Webrat
Integration Test With Cucumber And WebratKang-min Liu
 
Quick ref capybara
Quick ref capybaraQuick ref capybara
Quick ref capybarafatec
 
Quick ref capybara
Quick ref capybaraQuick ref capybara
Quick ref capybarafatec
 
Green Light for the Apps with Calaba.sh - DroidCon Paris 2014
Green Light for the Apps with Calaba.sh - DroidCon Paris 2014Green Light for the Apps with Calaba.sh - DroidCon Paris 2014
Green Light for the Apps with Calaba.sh - DroidCon Paris 2014Jean-Loup Yu
 
[Thong Nguyen & Trong Bui] Behavior Driven Development (BDD) and Automation T...
[Thong Nguyen & Trong Bui] Behavior Driven Development (BDD) and Automation T...[Thong Nguyen & Trong Bui] Behavior Driven Development (BDD) and Automation T...
[Thong Nguyen & Trong Bui] Behavior Driven Development (BDD) and Automation T...Ho Chi Minh City Software Testing Club
 
Gherkin for test automation in agile
Gherkin for test automation in agileGherkin for test automation in agile
Gherkin for test automation in agileViresh Doshi
 
How to improve our acceptance tests - Pyccuracy VS Splinter
How to improve our acceptance tests - Pyccuracy VS SplinterHow to improve our acceptance tests - Pyccuracy VS Splinter
How to improve our acceptance tests - Pyccuracy VS SplinterFernando Sandes
 
Write Tests in End Users’ Lingo
Write Tests in End Users’ LingoWrite Tests in End Users’ Lingo
Write Tests in End Users’ LingoIndicThreads
 
Testing ASP.net and C# using Ruby (NDC2010)
Testing ASP.net and C# using Ruby (NDC2010)Testing ASP.net and C# using Ruby (NDC2010)
Testing ASP.net and C# using Ruby (NDC2010)Ben Hall
 
Dmitry sharkov - Maturing Your Cucumber Suites
Dmitry sharkov   - Maturing Your Cucumber SuitesDmitry sharkov   - Maturing Your Cucumber Suites
Dmitry sharkov - Maturing Your Cucumber SuitesQA or the Highway
 
Story Driven Development With Cucumber
Story Driven Development With CucumberStory Driven Development With Cucumber
Story Driven Development With CucumberSean Cribbs
 
Story-driven Testing
Story-driven TestingStory-driven Testing
Story-driven TestingBrian Hogan
 
Introduce cucumber
Introduce cucumberIntroduce cucumber
Introduce cucumberBachue Zhou
 
Testiranje s capybaro
Testiranje s capybaroTestiranje s capybaro
Testiranje s capybaroArto Artnik
 
I put on my mink and wizard behat
I put on my mink and wizard behatI put on my mink and wizard behat
I put on my mink and wizard behatxsist10
 
Social login integration
Social login integrationSocial login integration
Social login integrationMicroPyramid .
 
I put on my mink and wizard behat - Confoo Canada
I put on my mink and wizard behat - Confoo CanadaI put on my mink and wizard behat - Confoo Canada
I put on my mink and wizard behat - Confoo Canadaxsist10
 
Behavior Driven Development with Cucumber
Behavior Driven Development with CucumberBehavior Driven Development with Cucumber
Behavior Driven Development with CucumberBrandon Keepers
 

Similaire à Largamos o cucumber (20)

Enabling agile devliery through enabling BDD in PHP projects
Enabling agile devliery through enabling BDD in PHP projectsEnabling agile devliery through enabling BDD in PHP projects
Enabling agile devliery through enabling BDD in PHP projects
 
Integration Test With Cucumber And Webrat
Integration Test With Cucumber And WebratIntegration Test With Cucumber And Webrat
Integration Test With Cucumber And Webrat
 
Quick ref capybara
Quick ref capybaraQuick ref capybara
Quick ref capybara
 
Quick ref capybara
Quick ref capybaraQuick ref capybara
Quick ref capybara
 
Green Light for the Apps with Calaba.sh - DroidCon Paris 2014
Green Light for the Apps with Calaba.sh - DroidCon Paris 2014Green Light for the Apps with Calaba.sh - DroidCon Paris 2014
Green Light for the Apps with Calaba.sh - DroidCon Paris 2014
 
[Thong Nguyen & Trong Bui] Behavior Driven Development (BDD) and Automation T...
[Thong Nguyen & Trong Bui] Behavior Driven Development (BDD) and Automation T...[Thong Nguyen & Trong Bui] Behavior Driven Development (BDD) and Automation T...
[Thong Nguyen & Trong Bui] Behavior Driven Development (BDD) and Automation T...
 
Gherkin for test automation in agile
Gherkin for test automation in agileGherkin for test automation in agile
Gherkin for test automation in agile
 
Design Web Api
Design Web ApiDesign Web Api
Design Web Api
 
How to improve our acceptance tests - Pyccuracy VS Splinter
How to improve our acceptance tests - Pyccuracy VS SplinterHow to improve our acceptance tests - Pyccuracy VS Splinter
How to improve our acceptance tests - Pyccuracy VS Splinter
 
Write Tests in End Users’ Lingo
Write Tests in End Users’ LingoWrite Tests in End Users’ Lingo
Write Tests in End Users’ Lingo
 
Testing ASP.net and C# using Ruby (NDC2010)
Testing ASP.net and C# using Ruby (NDC2010)Testing ASP.net and C# using Ruby (NDC2010)
Testing ASP.net and C# using Ruby (NDC2010)
 
Dmitry sharkov - Maturing Your Cucumber Suites
Dmitry sharkov   - Maturing Your Cucumber SuitesDmitry sharkov   - Maturing Your Cucumber Suites
Dmitry sharkov - Maturing Your Cucumber Suites
 
Story Driven Development With Cucumber
Story Driven Development With CucumberStory Driven Development With Cucumber
Story Driven Development With Cucumber
 
Story-driven Testing
Story-driven TestingStory-driven Testing
Story-driven Testing
 
Introduce cucumber
Introduce cucumberIntroduce cucumber
Introduce cucumber
 
Testiranje s capybaro
Testiranje s capybaroTestiranje s capybaro
Testiranje s capybaro
 
I put on my mink and wizard behat
I put on my mink and wizard behatI put on my mink and wizard behat
I put on my mink and wizard behat
 
Social login integration
Social login integrationSocial login integration
Social login integration
 
I put on my mink and wizard behat - Confoo Canada
I put on my mink and wizard behat - Confoo CanadaI put on my mink and wizard behat - Confoo Canada
I put on my mink and wizard behat - Confoo Canada
 
Behavior Driven Development with Cucumber
Behavior Driven Development with CucumberBehavior Driven Development with Cucumber
Behavior Driven Development with Cucumber
 

Plus de Victor Hugo Germano

Expectativa ágil - Caipira Ágil 2017
Expectativa ágil - Caipira Ágil 2017Expectativa ágil - Caipira Ágil 2017
Expectativa ágil - Caipira Ágil 2017Victor Hugo Germano
 
O que não te contaram sobre entregar projetos Ágeis - TDC2017
O que não te contaram sobre entregar projetos Ágeis - TDC2017O que não te contaram sobre entregar projetos Ágeis - TDC2017
O que não te contaram sobre entregar projetos Ágeis - TDC2017Victor Hugo Germano
 
Agile coaching competency framework - TDC
Agile coaching competency framework - TDCAgile coaching competency framework - TDC
Agile coaching competency framework - TDCVictor Hugo Germano
 
5 disfunções de um time Scrum Day
5 disfunções de um time   Scrum Day5 disfunções de um time   Scrum Day
5 disfunções de um time Scrum DayVictor Hugo Germano
 
5 disfunções de um time - Devops Summit Brasil
5 disfunções de um time  - Devops Summit Brasil5 disfunções de um time  - Devops Summit Brasil
5 disfunções de um time - Devops Summit BrasilVictor Hugo Germano
 
Direto ao Ponto - DevOpsSummit Brasil
Direto ao Ponto - DevOpsSummit BrasilDireto ao Ponto - DevOpsSummit Brasil
Direto ao Ponto - DevOpsSummit BrasilVictor Hugo Germano
 
Auto-gestão, negócios e produtividade - Agile Floripa 2016
Auto-gestão, negócios e produtividade - Agile Floripa 2016Auto-gestão, negócios e produtividade - Agile Floripa 2016
Auto-gestão, negócios e produtividade - Agile Floripa 2016Victor Hugo Germano
 
Democracia Organizacional - Linguagil 2015
Democracia Organizacional - Linguagil 2015Democracia Organizacional - Linguagil 2015
Democracia Organizacional - Linguagil 2015Victor Hugo Germano
 
Trilha management 3.0 - arbejdsglaede v2 (1)
Trilha   management 3.0 - arbejdsglaede v2 (1)Trilha   management 3.0 - arbejdsglaede v2 (1)
Trilha management 3.0 - arbejdsglaede v2 (1)Victor Hugo Germano
 
Democracia organizacional TDC 2013
Democracia organizacional TDC 2013Democracia organizacional TDC 2013
Democracia organizacional TDC 2013Victor Hugo Germano
 
Trust - Diana Larsen at Agiles 2009
Trust - Diana Larsen at Agiles 2009Trust - Diana Larsen at Agiles 2009
Trust - Diana Larsen at Agiles 2009Victor Hugo Germano
 
Desafios do Profissionalismo Ágil
Desafios do Profissionalismo ÁgilDesafios do Profissionalismo Ágil
Desafios do Profissionalismo ÁgilVictor Hugo Germano
 

Plus de Victor Hugo Germano (20)

Expectativa ágil - Caipira Ágil 2017
Expectativa ágil - Caipira Ágil 2017Expectativa ágil - Caipira Ágil 2017
Expectativa ágil - Caipira Ágil 2017
 
O que não te contaram sobre entregar projetos Ágeis - TDC2017
O que não te contaram sobre entregar projetos Ágeis - TDC2017O que não te contaram sobre entregar projetos Ágeis - TDC2017
O que não te contaram sobre entregar projetos Ágeis - TDC2017
 
Agile coaching competency framework - TDC
Agile coaching competency framework - TDCAgile coaching competency framework - TDC
Agile coaching competency framework - TDC
 
5 disfunções de um time Scrum Day
5 disfunções de um time   Scrum Day5 disfunções de um time   Scrum Day
5 disfunções de um time Scrum Day
 
5 disfunções de um time - Devops Summit Brasil
5 disfunções de um time  - Devops Summit Brasil5 disfunções de um time  - Devops Summit Brasil
5 disfunções de um time - Devops Summit Brasil
 
Direto ao Ponto - DevOpsSummit Brasil
Direto ao Ponto - DevOpsSummit BrasilDireto ao Ponto - DevOpsSummit Brasil
Direto ao Ponto - DevOpsSummit Brasil
 
Auto-gestão, negócios e produtividade - Agile Floripa 2016
Auto-gestão, negócios e produtividade - Agile Floripa 2016Auto-gestão, negócios e produtividade - Agile Floripa 2016
Auto-gestão, negócios e produtividade - Agile Floripa 2016
 
O Mundo dos OKRs
O Mundo dos OKRsO Mundo dos OKRs
O Mundo dos OKRs
 
Além da gestão tradicional
Além da gestão tradicionalAlém da gestão tradicional
Além da gestão tradicional
 
Democracia Organizacional - Linguagil 2015
Democracia Organizacional - Linguagil 2015Democracia Organizacional - Linguagil 2015
Democracia Organizacional - Linguagil 2015
 
Trilha management 3.0 - arbejdsglaede v2 (1)
Trilha   management 3.0 - arbejdsglaede v2 (1)Trilha   management 3.0 - arbejdsglaede v2 (1)
Trilha management 3.0 - arbejdsglaede v2 (1)
 
Democracia organizacional TDC 2013
Democracia organizacional TDC 2013Democracia organizacional TDC 2013
Democracia organizacional TDC 2013
 
O futuro do agile - TDC 2011
O futuro do agile - TDC 2011O futuro do agile - TDC 2011
O futuro do agile - TDC 2011
 
O futuro do agile
O futuro do agileO futuro do agile
O futuro do agile
 
Minicurso groovy grails
Minicurso groovy grailsMinicurso groovy grails
Minicurso groovy grails
 
Having fun with jabber bots
Having fun with jabber botsHaving fun with jabber bots
Having fun with jabber bots
 
Voce Tem Orgulho Do Seu Codigo
Voce Tem Orgulho Do Seu CodigoVoce Tem Orgulho Do Seu Codigo
Voce Tem Orgulho Do Seu Codigo
 
Trust - Diana Larsen at Agiles 2009
Trust - Diana Larsen at Agiles 2009Trust - Diana Larsen at Agiles 2009
Trust - Diana Larsen at Agiles 2009
 
Do Monumental Ao Agil
Do Monumental Ao AgilDo Monumental Ao Agil
Do Monumental Ao Agil
 
Desafios do Profissionalismo Ágil
Desafios do Profissionalismo ÁgilDesafios do Profissionalismo Ágil
Desafios do Profissionalismo Ágil
 

Dernier

9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Will Schroeder
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8DianaGray10
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPathCommunity
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDELiveplex
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024D Cloud Solutions
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdfPedro Manuel
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.YounusS2
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXTarek Kalaji
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Adtran
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesMd Hossain Ali
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfinfogdgmi
 
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfUiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfDianaGray10
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1DianaGray10
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URLRuncy Oommen
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintMahmoud Rabie
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Websitedgelyza
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationIES VE
 

Dernier (20)

9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation Developers
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdf
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.
 
20150722 - AGV
20150722 - AGV20150722 - AGV
20150722 - AGV
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBX
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdf
 
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfUiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URL
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership Blueprint
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Website
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
 

Largamos o cucumber

  • 1. @victorhg Largamos o Cucumber http://www.flickr.com/photos/stuartpilbrow/3687751382/
  • 2. Falando sobre cucumber! “BDD outside in” em 2011
  • 3. Bom e velho cucumber   Accessing website with true credentials When I am on the login page And I fill in "email" with "bla@email.com" And I fill in "password" with "qwerty" And I click button "Login" Then I should see "Olá, bla@email.com" smell gerado pelo web_steps.rb
  • 4. Text Não é esse o ponto!!
  • 5. +1 Camada de abstração Mais código para manter Clientes Duplicando código em linguagem natural esperam LER a especificação Clientes não querem escrever testes!
  • 6. Alcançando Valor com Cucumber Acessing website with true credentials: When I am on the login page And I use my credentials Then I should see a welcome message
  • 7. Manutenção continuou um saco! Duplicando rspecs & cucumber steps Refactoring não é perfeito Cada vez menos testes de aceitação com cucumber source
  • 8. Mantendo “Valor” User accessing website In order to easy accessing process, As a user I can use my facebook account to connect When a visitant doesn't have a website account Accessing the registration process with facebook Should automatically fill in his personal data Should not present the password information
  • 10. specs/acceptance/ facebook_integration.rb describe "User acessing website", """ In order to easy accessing process As a user I can use a facebook account to connect with website""" do      context "When a user doesn't have a go2doc account" do      context "Acessing registration process with facebook" do         before do         end         it "Should automatically fill in personal data" do           (CODIGO RSPEC)         end         it "Should not present password information" do           (CODIGO RSPEC)         end       end     end https://gist.github.com/2992243 end
  • 11. Given(:stack) { stack_with(initial_contents) }   context "when empty" do     Given(:initial_contents) { [] }     Then { stack.depth.should == 0 }     context "when pushing" do       When { stack.push(:an_item) }       Then { stack.depth.should == 1 }       Then { stack.top.should == :an_item }     end   end https://github.com/jimweirich/rspec-given
  • 12. feature "Articles", %q{ In order to have an awesome blog As an author I want to create and manage articles } do background do Article.create!(:title => 'One') end scenario "Article index" do visit '/articles' page.should have_content('One') end end https://github.com/cavalle/steak

Notes de l'éditeur

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n