SlideShare una empresa de Scribd logo
1 de 39
Descargar para leer sin conexión
Behaviour-Driven Development

    ft. Ruby, Cucumber & RSpec
Видове тестване

Области за проверка   Начини за проверка

Process               Doc Reviews
Functional            Manual
Security              Automated
Performance           Sampling
Stress/Load           Test Driven
Usability             Behavior Driven
Glob/Loc
Tестове


                Ръчни    Автоматизирани
Квалификация    Средна       Висока
 Удоволствие
                             
      Мащаб       0            ∞
       Цена     $$$$$         $$$
Цена на дефектите
Agile и автоматизацията

               Add test



                               Watch
Refactor
                              Test Fail




        Run               Write
       Tests              Code
I love the term diversity.
         Di-ver-si-ty.
Doesn’t that sound great?
Testing Frameworks за Ruby

      Cucumber
                      RSpec


Test::Minitest        Shoulda

      Test::Unit
                     Steak
Cucumber
           RSpec
Първи идват feature
 тестовете
features
    online_shopping.feature
$ rake cucumber

Feature: Online shopping
  In order to use the full capabilities
  of our online shop
  A user
  Should be able to make an order

 Scenario: Buying a beer        # features/online_shopping.feature:6
   Given that there are 5 beers on stock
   When Vasko buys 2 beers
   Then there should be 3 beers left

1 scenario (1 undefined)
3 steps (3 undefined)
0m0.003s
features
  step_definitions
     shopping_steps.rb
Feature: Online shopping
  In order to use the full capabilities
  of our online shop
  A user
  Should be able to make an order

 Scenario: Buying a beer    # features/online_shopping.feature:6
   Given that there are 5 beers on stock
      uninitialized constant Beer (NameError)
      ./features/step_definitions/online_shopping_steps.rb:5:
      in `/^that there are (d+) beers on stock$/‘
   When Vasko buys 2 beers
   Then there should be 3 beers left

Failing Scenarios:
cucumber features/online_shopping.feature:6 # Scenario: Buying a beer

1 scenario (1 failed)
3 steps (1 failed, 2 skipped)
0m0.469s
$ rake cucumber

Feature: Online shopping
  In order to use the full capabilities
  of our online shop
  A user
  Should be able to make an order

 Scenario: Buying a beer # features/online_shopping.feature:6
   Given that there are 5 beers on stock
   When Vasko buys 2 beers
   Then there should be 3 beers left

1 scenario (1 passed)
3 steps (3 passed)
0m0.003s
Gherkin
   Над 40 езика

$ cucumber --i18n help
| ar          | Arabic       |        ‫|العربية‬
| bg            Bulgarian    | български |
| ca          | Catalan      | català        |
| cs          | Czech        | Česky         |
| cy-GB       | Welsh        | Cymraeg |
| da          | Danish       | dansk         |
| de          | German       | Deutsch        |
| en          | English      | English       |
| en-Scouse   | Scouse       | Scouse        |
| en-au       | Australian   | Australian |
 …              …              …
$ rake cucumber

# language: bg
Функционалност: Пазаруване онлайн
  За да използват пълните възможности
  на нашия онлайн магазин
  Потребителите
  Трябва да могат да правят поръчки

 Сценарий: Купуване на бира # features/online_shopping.feature:10
   Дадено е, че има налични 5 бири
   Когато Васко купи 2 бири
   То трябва да останат 3 бири

1 scenario (1 passed)
3 steps (3 passed)
0m0.003s
Къде са
unit tests?
спецификации
Test
Spec
Test vs. Spec
Test vs. Spec
Test vs. Spec
Test vs. Spec
Cucumber + RSpec – задвижване
на реализацията отвън - навътре
          Feature

          Spec

          Code
          Refactor
WHO BROKE
THE BUILD?
Guard
        Bundle update
        Bundle already up-to-date




         RSpec results
         197 examples, 0 failures (15 pending)
           in 12.274 seconds




        Cucumber Results
        13 passed steps
Spork

        Spork
        Rspec & Cucumber successfully started
Jenkins
ВЪПРОСИ?
Ресурси
• Десетте най-големи софтуерни грешки:
  http://themanojblog.blogspot.com/2009/05/
  blog-wars-episode-v-historys-top-ten.html
• Тестване на софтуер:
  http://en.wikipedia.org/wiki/Software_testing
• Допълнитени ресурси:
  http://www.softwaretestinghelp.com
Ресурси
•   Cucumber: http://cukes.info
•   RSpec: http://rspec.info
•   Guard: https://github.com/guard/guard
•   Spork: https://github.com/sporkrb/spork
•   Jenkins: http://jenkins-ci.org/
Контакти

• Георги Кременлиев:
  – george@empowerunited.com
  – @gssgek


• Цветомила Михайлова:
  – tsvetomila@empowerunited.com
  – @tsvetomila
БЛАГОДАРИМ ВИ!

Más contenido relacionado

Similar a Behavior Driven Development, Ruby Style

Outside-in Development with Cucumber and Rspec
Outside-in Development with Cucumber and RspecOutside-in Development with Cucumber and Rspec
Outside-in Development with Cucumber and RspecJoseph Wilk
 
Rocket Fuelled Cucumbers
Rocket Fuelled CucumbersRocket Fuelled Cucumbers
Rocket Fuelled CucumbersJoseph Wilk
 
Exploring your APIs with Postman
Exploring your APIs with PostmanExploring your APIs with Postman
Exploring your APIs with PostmanAmber Race
 
WE are Doing it Wrong - Dmitry Sharkov
WE are Doing it Wrong - Dmitry SharkovWE are Doing it Wrong - Dmitry Sharkov
WE are Doing it Wrong - Dmitry SharkovQA or the Highway
 
Cucumber - We Are Doing It Wrong
Cucumber - We Are Doing It WrongCucumber - We Are Doing It Wrong
Cucumber - We Are Doing It WrongDmitry Sharkov
 
The what, why and how of web analytics testing
The what, why and how of web analytics testingThe what, why and how of web analytics testing
The what, why and how of web analytics testingAnand Bagmar
 
Agile Software Development with Intrinsic Quality
Agile Software Development with Intrinsic QualityAgile Software Development with Intrinsic Quality
Agile Software Development with Intrinsic QualityDemetrius Nunes
 
Postman & API Testing by Amber Race
Postman & API Testing by Amber RacePostman & API Testing by Amber Race
Postman & API Testing by Amber RacePostman
 
20141210 rakuten techtalk
20141210 rakuten techtalk20141210 rakuten techtalk
20141210 rakuten techtalkHiroshi SHIBATA
 
Making and Breaking Web Services with Ruby
Making and Breaking Web Services with RubyMaking and Breaking Web Services with Ruby
Making and Breaking Web Services with Rubyerr
 
Behaviour driven development present
Behaviour driven development presentBehaviour driven development present
Behaviour driven development presentRaul Panjiyar
 
Testing Zen
Testing ZenTesting Zen
Testing Zenday
 
Compliance Automation with InSpec - Chef NYC Meetup - April 2017
Compliance Automation with InSpec - Chef NYC Meetup - April 2017Compliance Automation with InSpec - Chef NYC Meetup - April 2017
Compliance Automation with InSpec - Chef NYC Meetup - April 2017adamleff
 
Verdades e mentiras sobre teste de software no mundo magico do agile
Verdades e mentiras sobre teste de software no mundo magico do agileVerdades e mentiras sobre teste de software no mundo magico do agile
Verdades e mentiras sobre teste de software no mundo magico do agileGuilherme Motta
 
Super powered API testing
Super powered API testing Super powered API testing
Super powered API testing postmanclient
 
Behaviour driven infrastructure
Behaviour driven infrastructureBehaviour driven infrastructure
Behaviour driven infrastructureLindsay Holmwood
 
BDD in Java using Cucumber
BDD in Java using CucumberBDD in Java using Cucumber
BDD in Java using Cucumberslavkurochkin
 
Clearly, I Have Made Some Bad Decisions
Clearly, I Have Made Some Bad DecisionsClearly, I Have Made Some Bad Decisions
Clearly, I Have Made Some Bad DecisionsJonathan Hitchcock
 

Similar a Behavior Driven Development, Ruby Style (20)

Outside-in Development with Cucumber and Rspec
Outside-in Development with Cucumber and RspecOutside-in Development with Cucumber and Rspec
Outside-in Development with Cucumber and Rspec
 
Cucumber
CucumberCucumber
Cucumber
 
Rocket Fuelled Cucumbers
Rocket Fuelled CucumbersRocket Fuelled Cucumbers
Rocket Fuelled Cucumbers
 
Exploring your APIs with Postman
Exploring your APIs with PostmanExploring your APIs with Postman
Exploring your APIs with Postman
 
WE are Doing it Wrong - Dmitry Sharkov
WE are Doing it Wrong - Dmitry SharkovWE are Doing it Wrong - Dmitry Sharkov
WE are Doing it Wrong - Dmitry Sharkov
 
Cucumber - We Are Doing It Wrong
Cucumber - We Are Doing It WrongCucumber - We Are Doing It Wrong
Cucumber - We Are Doing It Wrong
 
The what, why and how of web analytics testing
The what, why and how of web analytics testingThe what, why and how of web analytics testing
The what, why and how of web analytics testing
 
Agile Software Development with Intrinsic Quality
Agile Software Development with Intrinsic QualityAgile Software Development with Intrinsic Quality
Agile Software Development with Intrinsic Quality
 
Front-End UnitTesting
Front-End UnitTestingFront-End UnitTesting
Front-End UnitTesting
 
Postman & API Testing by Amber Race
Postman & API Testing by Amber RacePostman & API Testing by Amber Race
Postman & API Testing by Amber Race
 
20141210 rakuten techtalk
20141210 rakuten techtalk20141210 rakuten techtalk
20141210 rakuten techtalk
 
Making and Breaking Web Services with Ruby
Making and Breaking Web Services with RubyMaking and Breaking Web Services with Ruby
Making and Breaking Web Services with Ruby
 
Behaviour driven development present
Behaviour driven development presentBehaviour driven development present
Behaviour driven development present
 
Testing Zen
Testing ZenTesting Zen
Testing Zen
 
Compliance Automation with InSpec - Chef NYC Meetup - April 2017
Compliance Automation with InSpec - Chef NYC Meetup - April 2017Compliance Automation with InSpec - Chef NYC Meetup - April 2017
Compliance Automation with InSpec - Chef NYC Meetup - April 2017
 
Verdades e mentiras sobre teste de software no mundo magico do agile
Verdades e mentiras sobre teste de software no mundo magico do agileVerdades e mentiras sobre teste de software no mundo magico do agile
Verdades e mentiras sobre teste de software no mundo magico do agile
 
Super powered API testing
Super powered API testing Super powered API testing
Super powered API testing
 
Behaviour driven infrastructure
Behaviour driven infrastructureBehaviour driven infrastructure
Behaviour driven infrastructure
 
BDD in Java using Cucumber
BDD in Java using CucumberBDD in Java using Cucumber
BDD in Java using Cucumber
 
Clearly, I Have Made Some Bad Decisions
Clearly, I Have Made Some Bad DecisionsClearly, I Have Made Some Bad Decisions
Clearly, I Have Made Some Bad Decisions
 

Último

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 

Último (20)

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

Behavior Driven Development, Ruby Style

  • 1.
  • 2. Behaviour-Driven Development ft. Ruby, Cucumber & RSpec
  • 3. Видове тестване Области за проверка Начини за проверка Process Doc Reviews Functional Manual Security Automated Performance Sampling Stress/Load Test Driven Usability Behavior Driven Glob/Loc
  • 4. Tестове Ръчни Автоматизирани Квалификация Средна Висока Удоволствие   Мащаб 0 ∞ Цена $$$$$ $$$
  • 6. Agile и автоматизацията Add test Watch Refactor Test Fail Run Write Tests Code
  • 7.
  • 8. I love the term diversity. Di-ver-si-ty. Doesn’t that sound great?
  • 9. Testing Frameworks за Ruby Cucumber RSpec Test::Minitest Shoulda Test::Unit Steak
  • 10. Cucumber RSpec
  • 11.
  • 12. Първи идват feature тестовете
  • 13. features online_shopping.feature
  • 14. $ rake cucumber Feature: Online shopping In order to use the full capabilities of our online shop A user Should be able to make an order Scenario: Buying a beer # features/online_shopping.feature:6 Given that there are 5 beers on stock When Vasko buys 2 beers Then there should be 3 beers left 1 scenario (1 undefined) 3 steps (3 undefined) 0m0.003s
  • 15. features step_definitions shopping_steps.rb
  • 16. Feature: Online shopping In order to use the full capabilities of our online shop A user Should be able to make an order Scenario: Buying a beer # features/online_shopping.feature:6 Given that there are 5 beers on stock uninitialized constant Beer (NameError) ./features/step_definitions/online_shopping_steps.rb:5: in `/^that there are (d+) beers on stock$/‘ When Vasko buys 2 beers Then there should be 3 beers left Failing Scenarios: cucumber features/online_shopping.feature:6 # Scenario: Buying a beer 1 scenario (1 failed) 3 steps (1 failed, 2 skipped) 0m0.469s
  • 17. $ rake cucumber Feature: Online shopping In order to use the full capabilities of our online shop A user Should be able to make an order Scenario: Buying a beer # features/online_shopping.feature:6 Given that there are 5 beers on stock When Vasko buys 2 beers Then there should be 3 beers left 1 scenario (1 passed) 3 steps (3 passed) 0m0.003s
  • 18. Gherkin Над 40 езика $ cucumber --i18n help | ar | Arabic | ‫|العربية‬ | bg Bulgarian | български | | ca | Catalan | català | | cs | Czech | Česky | | cy-GB | Welsh | Cymraeg | | da | Danish | dansk | | de | German | Deutsch | | en | English | English | | en-Scouse | Scouse | Scouse | | en-au | Australian | Australian | … … …
  • 19.
  • 20.
  • 21. $ rake cucumber # language: bg Функционалност: Пазаруване онлайн За да използват пълните възможности на нашия онлайн магазин Потребителите Трябва да могат да правят поръчки Сценарий: Купуване на бира # features/online_shopping.feature:10 Дадено е, че има налични 5 бири Когато Васко купи 2 бири То трябва да останат 3 бири 1 scenario (1 passed) 3 steps (3 passed) 0m0.003s
  • 23. Test
  • 24. Spec
  • 29. Cucumber + RSpec – задвижване на реализацията отвън - навътре Feature Spec Code Refactor
  • 31. Guard Bundle update Bundle already up-to-date RSpec results 197 examples, 0 failures (15 pending) in 12.274 seconds Cucumber Results 13 passed steps
  • 32. Spork Spork Rspec & Cucumber successfully started
  • 34.
  • 36. Ресурси • Десетте най-големи софтуерни грешки: http://themanojblog.blogspot.com/2009/05/ blog-wars-episode-v-historys-top-ten.html • Тестване на софтуер: http://en.wikipedia.org/wiki/Software_testing • Допълнитени ресурси: http://www.softwaretestinghelp.com
  • 37. Ресурси • Cucumber: http://cukes.info • RSpec: http://rspec.info • Guard: https://github.com/guard/guard • Spork: https://github.com/sporkrb/spork • Jenkins: http://jenkins-ci.org/
  • 38. Контакти • Георги Кременлиев: – george@empowerunited.com – @gssgek • Цветомила Михайлова: – tsvetomila@empowerunited.com – @tsvetomila