ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
Agile with cucumber or
     BDD with fun
     Leonid Dinershtein,
           april, 2012
§±§Ý§Ñ§ß §à§Ô§å§â§Ö§è
Behaviour Driven Development with elegance and joy
Cucumber
Cucumber
Cucumber
http://projectcartoon.com/
Cucumber
CHAOS Report




               http://www.projectsmart.co.uk/docs/chaos-report.pdf
§·§Ó§Ñ§ä§Ú§ä §ï§ä§à §ä§Ö§â§á§Ö§ä§î!
§±§â§à§Ò§Ý§Ö§Þ§í:

§²§Ö§Ñ§Ý§Ú§Ù§å§Ö§Þ §ß§Ö §ä§à
§¯§Ö §ä§Ñ§Ü
§¯§Ö§ã§ä§Ñ§Ò§Ú§Ý§î§ß§à
§¯§Ö§Ó§à§Ù§Þ§à§Ø§ß§à §á§à§Õ§Õ§Ö§â§Ø§Ú§Ó§Ñ§ä§î
§²§Ö§ê§Ö§ß§Ú§ñ
§®§Ö§ä§à§Õ§à§Ý§à§Ô§Ú§ñ §â§Ñ§Ù§â§Ñ§Ò§à§ä§Ü§Ú
§²§Ñ§Ù§Ó§Ú§ä§Ú§Ö §á§â§à§Ô§â§Ñ§Þ§Þ§Ú§ã§ä§à§Ó
§²§Ñ§Ù§Ó§Ú§ä§Ú§Ö §Þ§Ö§ß§Ö§Õ§Ø§Ö§â§Ñ
§²§Ñ§Ù§Ó§Ú§ä§Ú§Ö §Ù§Ñ§Ü§Ñ§Ù§é§Ú§Ü§Ñ
Agile §Þ§Ñ§ß§Ú§æ§Ö§ã§ä
§­§ð§Õ§Ú §Ú §Ó§Ù§Ñ§Ú§Þ§à§Õ§Ö§Û§ã§ä§Ó§Ú§Ö §Ó§Ñ§Ø§ß§Ö§Ö §á§â§à§è§Ö§ã§ã§à§Ó §Ú §Ú§ß§ã§ä§â§å§Þ§Ö§ß§ä§à§Ó
§²§Ñ§Ò§à§ä§Ñ§ð§ë§Ú§Û §á§â§à§Õ§å§Ü§ä §Ó§Ñ§Ø§ß§Ö§Ö §Ú§ã§é§Ö§â§á§í§Ó§Ñ§ð§ë§Ö§Û §Õ§à§Ü§å§Þ§Ö§ß§ä§Ñ§è§Ú§Ú
§³§à§ä§â§å§Õ§ß§Ú§é§Ö§ã§ä§Ó§à §ã §Ù§Ñ§Ü§Ñ§Ù§é§Ú§Ü§à§Þ §Ó§Ñ§Ø§ß§Ö§Ö §ã§à§Ô§Ý§Ñ§ã§à§Ó§Ñ§ß§Ú§ñ §å§ã§Ý§à§Ó§Ú§Û
§Ü§à§ß§ä§â§Ñ§Ü§ä§Ñ
§¤§à§ä§à§Ó§ß§à§ã§ä§î §Ü §Ú§Ù§Þ§Ö§ß§Ö§ß§Ú§ñ§Þ §Ó§Ñ§Ø§ß§Ö§Ö §ã§Ý§Ö§Õ§à§Ó§Ñ§ß§Ú§ñ §á§Ö§â§Ó§à§ß§Ñ§é§Ñ§Ý§î§ß§à§Þ§å §á§Ý§Ñ§ß§å
BDD
Behavior-driven development (or BDD) is an
agile software development technique devised
by Dan North as a response to the issues he
encountered whilst teaching Test-Driven
Development:
¡ñ  Where to start
¡ñ  What to test and what not to test
¡ñ  How much to test in one go
¡ñ  What to call the tests
¡ñ  How to understand why a test fails
BDD
¡°Behaviour-driven development is about
implementing an application by describing its
behaviour from the perspective of its
stakeholders¡±
§·§à§â§à§ê§Ú§Û §Þ§Ö§ß§Ö§Õ§Ø§Ö§â
§·§à§â§à§ê§Ú§Û §Þ§Ö§ß§Ö§Õ§Ø§Ö§â
¡ñ §¥§à§Ý§Ø§Ö§ß §à§Ò§Ý§Ñ§Õ§Ñ§ä§î §ã§á§à§ã§à§Ò§ß§à§ã§ä§î§ð
  §á§à§ß§Ú§Þ§Ñ§ä§î §Ý§ð§Õ§Ö§Û §â§Ñ§Ù§ß§à§Ô§à §ã§Ü§Ý§Ñ§Õ§Ñ §å§Þ§Ñ (§à§ä
  §â§Ñ§Ù§â§Ñ§Ò§à§ä§é§Ú§Ü§à§Ó, §Õ§à §Ò§Ú§Ù§ß§Ö§ã-§Ù§Ñ§Ü§Ñ§Ù§é§Ú§Ü§à§Ó) §Ú
  §å§Þ§Ö§ß§Ú§Ö §á§à§Þ§à§Ô§Ñ§ä§î §á§Ö§â§Ö§Ó§à§Õ§Ú§ä§î §Þ§í§ã§Ý§Ú §ã
  §ñ§Ù§í§Ü§Ñ §à§Õ§ß§Ú§ç §ß§Ñ §ñ§Ù§í§Ü §Õ§â§å§Ô§Ú§ç
¡ñ §µ§Þ§Ö§Ö§ä §ß§Ö §ã§ã§Ñ§ä§î §Ú §ß§Ö §ß§í§ä§î! §¥§Ñ§Ø§Ö §Ü§à§Ô§Õ§Ñ §ã§ã§í§Ü§à§ä§ß§à §Ú §ß§í§ä§î §ç§à§é§Ö§ä§ã§ñ.
¡ñ §©§ß§Ñ§Ö§ä §é§Ö§Þ §à§ä§Ý§Ú§é§Ñ§Ö§ä§ã§ñ Quality Assurance
  §à§ä §ä§Ö§ã§ä§Ú§â§à§Ó§Ñ§ß§Ú§ñ
¡ñ §±§à§ß§Ú§Þ§Ñ§Ö§ä, §é§ä§à §â§Ñ§Ù§â§Ñ§Ò§à§ä§Ñ§ß§ß§í§Û §ã§à§æ§ä §ï§ä§à
  §ß§Ö §Ü§à§ß§Ö§è §á§â§à§Ö§Ü§ä§Ñ, §Ñ §Ó§ã§Ö§Ô§à §Ý§Ú§ê§î §ß§Ñ§é§Ñ§Ý§à. §ª
  §Ù§ß§Ñ§Ö§ä §é§Ö§Ô§à
                                           http://cartmendum.livejournal.com/93084.html
§³§Ü§à§Ý§î§Ü§à §ï§ä§à §ã§ä§à§Ú§ä?
§Ú §Ü§Ñ§Ü §Ó§ã§Ö §ï§ä§à
§á§â§à§Õ§Ñ§ä§î?
Cucumber
Cucumber
¡ñ §³§â§Ö§Õ§ã§ä§Ó§à §Õ§Ý§ñ §Ñ§Ó§ä§à§Þ§Ñ§ä§Ú§Ù§Ú§â§à§Ó§Ñ§ß§ß§à§Ô§à
  §ä§Ö§ã§ä§Ú§â§à§Ó§Ñ§ß§Ú§ñ
¡ñ §±§à§Ù§Ó§à§Ý§ñ§Ö§ä §à§á§Ú§ã§í§Ó§Ñ§ä§î §á§à§Ó§Ö§Õ§Ö§ß§Ú§Ö §ã§Ú§ã§ä§Ö§Þ§í
  §ß§Ñ §Ö§ã§ä§Ö§ã§ä§Ó§Ö§ß§ß§à§Þ §ñ§Ù§í§Ü§Ö
¡ñ §Á§Ó§Ý§ñ§Ö§ä§ã§ñ §à§ã§ß§à§Ó§ß§í§Þ §Ú§ß§ã§ä§â§å§Þ§Ö§ß§ä§à§Þ §Ó
  Behaviour Driven Development (BDD)
Cucumber
§±§Ý§Ñ§ß §à§Ô§å§â§Ö§è
1. §°§á§Ú§ê§Ú§ä§Ö §á§à§Ó§Ö§Õ§Ö§ß§Ú§Ö §ã§Ú§ã§ä§Ö§Þ§í §ß§Ñ §Ö§ã§ä§Ö§ã§ä§Ó§Ö§ß§ß§à§Þ
   §ñ§Ù§í§Ü§Ö(§¯§Ñ§á§Ú§ê§Ú§ä§Ö §ã§è§Ö§ß§Ñ§â§Ú§Û §á§à§Ó§Ö§Õ§Ö§ß§Ú§ñ)
2. §°§á§Ú§ê§Ú§ä§Ö §ê§Ñ§Ô§Ú §ã§è§Ö§ß§Ñ§â§Ú§ñ §ß§Ñ §ñ§Ù§í§Ü§Ö
   §á§â§à§Ô§â§Ñ§Þ§Þ§Ú§â§à§Ó§Ñ§ß§Ú§ñ
3. §©§Ñ§á§å§ã§ä§Ú§ä§Ö §ä§Ö§ã§ä§í §Ú §å§Ò§Ö§Õ§Ú§ä§Ö§ã§î, §é§ä§à §à§ß§Ú §ß§Ö
   §á§â§à§ç§à§Õ§ñ§ä
4. §¯§Ñ§á§Ú§ê§Ú§ä§Ö §Ü§à§Õ, §Ü§à§ä§à§â§í§Û §â§Ö§Ñ§Ý§Ú§Ù§å§Ö§ä §á§à§Ó§Ö§Õ§Ö§ß§Ú§Ö,
   §à§á§Ú§ã§Ñ§ß§ß§à§Ö §Ó §ä§Ö§ã§ä§Ñ§ç
5. §©§Ñ§á§å§ã§ä§Ú§ä§Ö §ä§Ö§ã§ä§í §ã§ß§à§Ó§Ñ §Ú §å§Ò§Ö§Õ§Ú§ä§Ö§ã§î, §é§ä§à
   §ß§Ö§Ü§à§ä§à§â§í§Ö §ä§Ö§ã§ä§í §ß§Ñ§é§Ñ§Ý§Ú §á§â§à§ç§à§Õ§Ú§ä§î
6. §±§à§Ó§ä§à§â§Ú§ä§Ö 2-5 §ê§Ñ§Ô§Ú, §á§à§Ü§Ñ §Ó§ã§Ö §ä§Ö§ã§ä§í §ß§Ö §ß§Ñ§é§ß§å§ä
   §á§â§à§ç§à§Õ§Ú§ä§î
7. §±§à§Ó§ä§à§â§Ú§ä§Ö 1-6 §ê§Ñ§Ô§Ú, §á§à§Ü§Ñ §ß§Ö §Ù§Ñ§Ü§à§ß§é§Ñ§ä§ã§ñ §Õ§Ö§ß§î§Ô§Ú
   §å §Ù§Ñ§Ü§Ñ§Ù§é§Ú§Ü§Ñ
Feature: Title
 In order to [Business Value]
 As a [Role]
 I want to [Some action]

Scenario: Title
 Given [Context]
 When [Action]
 Then [Outcome]
Scenario: Create Post
  Given I am a registered User
  And I have signed in
  When I go to Create Post Page
  And I create a Post and Publish it
  Then I should see the Post in the Index
  Page
Scenario: Create a Post
Given I am a registered User with name "Chuck", email
"chuck@Norris.com" and password "123456"
   And I sign in as "chuck@Norris.com/123456"
   When I visit Create Post Page
   And I fill up Title as "Best Post"
   And I fill up Content as "Chuck Norris counted to infinity
   - twice."
   And I publish the Post
   Then I should see message "Post was successfully
   created."
   And I should see post in the index page
Scenario: Artist creates an art work
   Given I am a registered artist
   And I follow the add new artwork link from the
dashboard
   When I fill the form with the artwork data
   And I upload a picture
   Then I should see a confirmation message telling me
that the artwork was added to my collection
Scenario: Artist creates an art work
   Given I am a registered artist
   And I am on my dashboard
   And I follow "Add an artwork" within "#dashboard"
   When I fill in "Title" with "The Arnolfini Portrait"
   And I fill in "Description" with "A nice portrait."
   And I select "Painting" from "Category"
   And I attach "arnolfini.jpg" to "Select picture"
   And I press "Create"
   Then I should see "The Arnolfini Portrait was
successfully added to your art collection."
Cucumber styles
¡ñ   Imperative style
¡ñ   Declarative style
¡ñ   Boring style
¡ñ   Wrong style
Cucumber
Cucumber
Cucumber
Profit
Profit
¡ñ   §²§Ñ§Ù§Ô§à§Ó§à§â §ß§Ñ §à§Õ§ß§à§Þ §ñ§Ù§í§Ü§Ö
¡ñ   §¹§Ö§ä§Ü§Ú§Ö §Ú §á§à§ß§ñ§ä§ß§í§Ö §ä§â§Ö§Ò§à§Ó§Ñ§ß§Ú§ñ
¡ñ   §µ§Ó§Ö§â§Ö§ß§ß§à§ã§ä§î
¡ñ   §®§Ö§ä§â§Ú§Ü§Ñ
¡ñ   §£§à§Ó§Ý§Ö§é§Ö§ß§ß§à§ã§ä§î §Ó §â§Ñ§Ò§à§ä§å
¡ñ   §¨§Ú§Ó§Ñ§ñ §Õ§à§Ü§å§Þ§Ö§ß§ä§Ñ§è§Ú§ñ
¡ñ   §µ§Ó§Ö§â§Ö§ß§ß§í§Û §â§Ö§æ§Ñ§Ü§ä§à§â§Ú§ß§Ô
Magic Kingdom
Don¡¯t use Cucumber unless you live in the
magic kingdom of non-programmers-writing-
tests (and send me a bottle of fairy dust if you¡¯
re there!)


                               http://37signals.com/svn/posts/3159-testing-like-the-tsa
§°§ê§Ú§Ò§Ü§Ú
¡ñ   §¯§Ö§ä §Ó§â§Ö§Þ§Ö§ß§Ú
¡ñ   §·§Ý§à§á§à§ä§ß§à
¡ñ   §´§â§Ö§Ò§à§Ó§Ñ§ß§Ú§ñ §Ò§í§ã§ä§â§à §Þ§Ö§ß§ñ§ð§ä§ã§ñ
¡ñ   §°§æ§à§â§Þ§Ý§Ö§ß§Ú§Ö §é§Ñ§ã§ä§à §Þ§Ö§ß§ñ§Ö§ä§ã§ñ
¡ñ   §ª§Õ§Ö§Ñ§Ý§î§ß§í§Û §ã§è§Ö§ß§Ñ§â§Ú§Û
¡ñ   Cucumber == BDD
Cucumber
§£§à§á§â§à§ã§í?




leonid@dinershtein.com

 http://dinershtein.com

More Related Content

Cucumber

  • 1. Agile with cucumber or BDD with fun Leonid Dinershtein, april, 2012
  • 3. Behaviour Driven Development with elegance and joy
  • 9. CHAOS Report http://www.projectsmart.co.uk/docs/chaos-report.pdf
  • 11. §±§â§à§Ò§Ý§Ö§Þ§í: §²§Ö§Ñ§Ý§Ú§Ù§å§Ö§Þ §ß§Ö §ä§à §¯§Ö §ä§Ñ§Ü §¯§Ö§ã§ä§Ñ§Ò§Ú§Ý§î§ß§à §¯§Ö§Ó§à§Ù§Þ§à§Ø§ß§à §á§à§Õ§Õ§Ö§â§Ø§Ú§Ó§Ñ§ä§î
  • 14. Agile §Þ§Ñ§ß§Ú§æ§Ö§ã§ä §­§ð§Õ§Ú §Ú §Ó§Ù§Ñ§Ú§Þ§à§Õ§Ö§Û§ã§ä§Ó§Ú§Ö §Ó§Ñ§Ø§ß§Ö§Ö §á§â§à§è§Ö§ã§ã§à§Ó §Ú §Ú§ß§ã§ä§â§å§Þ§Ö§ß§ä§à§Ó §²§Ñ§Ò§à§ä§Ñ§ð§ë§Ú§Û §á§â§à§Õ§å§Ü§ä §Ó§Ñ§Ø§ß§Ö§Ö §Ú§ã§é§Ö§â§á§í§Ó§Ñ§ð§ë§Ö§Û §Õ§à§Ü§å§Þ§Ö§ß§ä§Ñ§è§Ú§Ú §³§à§ä§â§å§Õ§ß§Ú§é§Ö§ã§ä§Ó§à §ã §Ù§Ñ§Ü§Ñ§Ù§é§Ú§Ü§à§Þ §Ó§Ñ§Ø§ß§Ö§Ö §ã§à§Ô§Ý§Ñ§ã§à§Ó§Ñ§ß§Ú§ñ §å§ã§Ý§à§Ó§Ú§Û §Ü§à§ß§ä§â§Ñ§Ü§ä§Ñ §¤§à§ä§à§Ó§ß§à§ã§ä§î §Ü §Ú§Ù§Þ§Ö§ß§Ö§ß§Ú§ñ§Þ §Ó§Ñ§Ø§ß§Ö§Ö §ã§Ý§Ö§Õ§à§Ó§Ñ§ß§Ú§ñ §á§Ö§â§Ó§à§ß§Ñ§é§Ñ§Ý§î§ß§à§Þ§å §á§Ý§Ñ§ß§å
  • 15. BDD Behavior-driven development (or BDD) is an agile software development technique devised by Dan North as a response to the issues he encountered whilst teaching Test-Driven Development: ¡ñ Where to start ¡ñ What to test and what not to test ¡ñ How much to test in one go ¡ñ What to call the tests ¡ñ How to understand why a test fails
  • 16. BDD ¡°Behaviour-driven development is about implementing an application by describing its behaviour from the perspective of its stakeholders¡±
  • 18. §·§à§â§à§ê§Ú§Û §Þ§Ö§ß§Ö§Õ§Ø§Ö§â ¡ñ §¥§à§Ý§Ø§Ö§ß §à§Ò§Ý§Ñ§Õ§Ñ§ä§î §ã§á§à§ã§à§Ò§ß§à§ã§ä§î§ð §á§à§ß§Ú§Þ§Ñ§ä§î §Ý§ð§Õ§Ö§Û §â§Ñ§Ù§ß§à§Ô§à §ã§Ü§Ý§Ñ§Õ§Ñ §å§Þ§Ñ (§à§ä §â§Ñ§Ù§â§Ñ§Ò§à§ä§é§Ú§Ü§à§Ó, §Õ§à §Ò§Ú§Ù§ß§Ö§ã-§Ù§Ñ§Ü§Ñ§Ù§é§Ú§Ü§à§Ó) §Ú §å§Þ§Ö§ß§Ú§Ö §á§à§Þ§à§Ô§Ñ§ä§î §á§Ö§â§Ö§Ó§à§Õ§Ú§ä§î §Þ§í§ã§Ý§Ú §ã §ñ§Ù§í§Ü§Ñ §à§Õ§ß§Ú§ç §ß§Ñ §ñ§Ù§í§Ü §Õ§â§å§Ô§Ú§ç ¡ñ §µ§Þ§Ö§Ö§ä §ß§Ö §ã§ã§Ñ§ä§î §Ú §ß§Ö §ß§í§ä§î! §¥§Ñ§Ø§Ö §Ü§à§Ô§Õ§Ñ §ã§ã§í§Ü§à§ä§ß§à §Ú §ß§í§ä§î §ç§à§é§Ö§ä§ã§ñ. ¡ñ §©§ß§Ñ§Ö§ä §é§Ö§Þ §à§ä§Ý§Ú§é§Ñ§Ö§ä§ã§ñ Quality Assurance §à§ä §ä§Ö§ã§ä§Ú§â§à§Ó§Ñ§ß§Ú§ñ ¡ñ §±§à§ß§Ú§Þ§Ñ§Ö§ä, §é§ä§à §â§Ñ§Ù§â§Ñ§Ò§à§ä§Ñ§ß§ß§í§Û §ã§à§æ§ä §ï§ä§à §ß§Ö §Ü§à§ß§Ö§è §á§â§à§Ö§Ü§ä§Ñ, §Ñ §Ó§ã§Ö§Ô§à §Ý§Ú§ê§î §ß§Ñ§é§Ñ§Ý§à. §ª §Ù§ß§Ñ§Ö§ä §é§Ö§Ô§à http://cartmendum.livejournal.com/93084.html
  • 19. §³§Ü§à§Ý§î§Ü§à §ï§ä§à §ã§ä§à§Ú§ä? §Ú §Ü§Ñ§Ü §Ó§ã§Ö §ï§ä§à §á§â§à§Õ§Ñ§ä§î?
  • 21. Cucumber ¡ñ §³§â§Ö§Õ§ã§ä§Ó§à §Õ§Ý§ñ §Ñ§Ó§ä§à§Þ§Ñ§ä§Ú§Ù§Ú§â§à§Ó§Ñ§ß§ß§à§Ô§à §ä§Ö§ã§ä§Ú§â§à§Ó§Ñ§ß§Ú§ñ ¡ñ §±§à§Ù§Ó§à§Ý§ñ§Ö§ä §à§á§Ú§ã§í§Ó§Ñ§ä§î §á§à§Ó§Ö§Õ§Ö§ß§Ú§Ö §ã§Ú§ã§ä§Ö§Þ§í §ß§Ñ §Ö§ã§ä§Ö§ã§ä§Ó§Ö§ß§ß§à§Þ §ñ§Ù§í§Ü§Ö ¡ñ §Á§Ó§Ý§ñ§Ö§ä§ã§ñ §à§ã§ß§à§Ó§ß§í§Þ §Ú§ß§ã§ä§â§å§Þ§Ö§ß§ä§à§Þ §Ó Behaviour Driven Development (BDD)
  • 23. §±§Ý§Ñ§ß §à§Ô§å§â§Ö§è 1. §°§á§Ú§ê§Ú§ä§Ö §á§à§Ó§Ö§Õ§Ö§ß§Ú§Ö §ã§Ú§ã§ä§Ö§Þ§í §ß§Ñ §Ö§ã§ä§Ö§ã§ä§Ó§Ö§ß§ß§à§Þ §ñ§Ù§í§Ü§Ö(§¯§Ñ§á§Ú§ê§Ú§ä§Ö §ã§è§Ö§ß§Ñ§â§Ú§Û §á§à§Ó§Ö§Õ§Ö§ß§Ú§ñ) 2. §°§á§Ú§ê§Ú§ä§Ö §ê§Ñ§Ô§Ú §ã§è§Ö§ß§Ñ§â§Ú§ñ §ß§Ñ §ñ§Ù§í§Ü§Ö §á§â§à§Ô§â§Ñ§Þ§Þ§Ú§â§à§Ó§Ñ§ß§Ú§ñ 3. §©§Ñ§á§å§ã§ä§Ú§ä§Ö §ä§Ö§ã§ä§í §Ú §å§Ò§Ö§Õ§Ú§ä§Ö§ã§î, §é§ä§à §à§ß§Ú §ß§Ö §á§â§à§ç§à§Õ§ñ§ä 4. §¯§Ñ§á§Ú§ê§Ú§ä§Ö §Ü§à§Õ, §Ü§à§ä§à§â§í§Û §â§Ö§Ñ§Ý§Ú§Ù§å§Ö§ä §á§à§Ó§Ö§Õ§Ö§ß§Ú§Ö, §à§á§Ú§ã§Ñ§ß§ß§à§Ö §Ó §ä§Ö§ã§ä§Ñ§ç 5. §©§Ñ§á§å§ã§ä§Ú§ä§Ö §ä§Ö§ã§ä§í §ã§ß§à§Ó§Ñ §Ú §å§Ò§Ö§Õ§Ú§ä§Ö§ã§î, §é§ä§à §ß§Ö§Ü§à§ä§à§â§í§Ö §ä§Ö§ã§ä§í §ß§Ñ§é§Ñ§Ý§Ú §á§â§à§ç§à§Õ§Ú§ä§î 6. §±§à§Ó§ä§à§â§Ú§ä§Ö 2-5 §ê§Ñ§Ô§Ú, §á§à§Ü§Ñ §Ó§ã§Ö §ä§Ö§ã§ä§í §ß§Ö §ß§Ñ§é§ß§å§ä §á§â§à§ç§à§Õ§Ú§ä§î 7. §±§à§Ó§ä§à§â§Ú§ä§Ö 1-6 §ê§Ñ§Ô§Ú, §á§à§Ü§Ñ §ß§Ö §Ù§Ñ§Ü§à§ß§é§Ñ§ä§ã§ñ §Õ§Ö§ß§î§Ô§Ú §å §Ù§Ñ§Ü§Ñ§Ù§é§Ú§Ü§Ñ
  • 24. Feature: Title In order to [Business Value] As a [Role] I want to [Some action] Scenario: Title Given [Context] When [Action] Then [Outcome]
  • 25. Scenario: Create Post Given I am a registered User And I have signed in When I go to Create Post Page And I create a Post and Publish it Then I should see the Post in the Index Page
  • 26. Scenario: Create a Post Given I am a registered User with name "Chuck", email "chuck@Norris.com" and password "123456" And I sign in as "chuck@Norris.com/123456" When I visit Create Post Page And I fill up Title as "Best Post" And I fill up Content as "Chuck Norris counted to infinity - twice." And I publish the Post Then I should see message "Post was successfully created." And I should see post in the index page
  • 27. Scenario: Artist creates an art work Given I am a registered artist And I follow the add new artwork link from the dashboard When I fill the form with the artwork data And I upload a picture Then I should see a confirmation message telling me that the artwork was added to my collection
  • 28. Scenario: Artist creates an art work Given I am a registered artist And I am on my dashboard And I follow "Add an artwork" within "#dashboard" When I fill in "Title" with "The Arnolfini Portrait" And I fill in "Description" with "A nice portrait." And I select "Painting" from "Category" And I attach "arnolfini.jpg" to "Select picture" And I press "Create" Then I should see "The Arnolfini Portrait was successfully added to your art collection."
  • 29. Cucumber styles ¡ñ Imperative style ¡ñ Declarative style ¡ñ Boring style ¡ñ Wrong style
  • 34. Profit ¡ñ §²§Ñ§Ù§Ô§à§Ó§à§â §ß§Ñ §à§Õ§ß§à§Þ §ñ§Ù§í§Ü§Ö ¡ñ §¹§Ö§ä§Ü§Ú§Ö §Ú §á§à§ß§ñ§ä§ß§í§Ö §ä§â§Ö§Ò§à§Ó§Ñ§ß§Ú§ñ ¡ñ §µ§Ó§Ö§â§Ö§ß§ß§à§ã§ä§î ¡ñ §®§Ö§ä§â§Ú§Ü§Ñ ¡ñ §£§à§Ó§Ý§Ö§é§Ö§ß§ß§à§ã§ä§î §Ó §â§Ñ§Ò§à§ä§å ¡ñ §¨§Ú§Ó§Ñ§ñ §Õ§à§Ü§å§Þ§Ö§ß§ä§Ñ§è§Ú§ñ ¡ñ §µ§Ó§Ö§â§Ö§ß§ß§í§Û §â§Ö§æ§Ñ§Ü§ä§à§â§Ú§ß§Ô
  • 35. Magic Kingdom Don¡¯t use Cucumber unless you live in the magic kingdom of non-programmers-writing- tests (and send me a bottle of fairy dust if you¡¯ re there!) http://37signals.com/svn/posts/3159-testing-like-the-tsa
  • 36. §°§ê§Ú§Ò§Ü§Ú ¡ñ §¯§Ö§ä §Ó§â§Ö§Þ§Ö§ß§Ú ¡ñ §·§Ý§à§á§à§ä§ß§à ¡ñ §´§â§Ö§Ò§à§Ó§Ñ§ß§Ú§ñ §Ò§í§ã§ä§â§à §Þ§Ö§ß§ñ§ð§ä§ã§ñ ¡ñ §°§æ§à§â§Þ§Ý§Ö§ß§Ú§Ö §é§Ñ§ã§ä§à §Þ§Ö§ß§ñ§Ö§ä§ã§ñ ¡ñ §ª§Õ§Ö§Ñ§Ý§î§ß§í§Û §ã§è§Ö§ß§Ñ§â§Ú§Û ¡ñ Cucumber == BDD