Spa2011
-
Upload
joseph-wilk -
Category
Technology
-
view
667 -
download
0
description
Transcript of Spa2011
CreatingCucumbers
customersdiscussioncollaboration
acceptance
languagevalue
Joseph Wilk
Elise Huard
Cucumber FeatureFeature: Be awesome NarrativeScenario: title which rocks Given <some context> And <yet more context> When <some action> And <more actions> Then <some outcome> And <more outcomes>
Not executedExample of
behaviour
Steps
Cucumber FeatureFeature: Be awesome NarrativeScenario: title which rocks Given <some context> And <yet more context> When <some action> And <more actions> Then <some outcome> And <more outcomes>
Not executed
Feature: Be awesome NarrativeScenario: title which rocks Given <some context> And <yet more context> When <some action> And <more actions> Then <some outcome> And <more outcomes>
Example of behaviour
Steps
Ruby
Plaintext
Ruby
Plaintext
Plaintext
Ruby
Ruby
Plaintext
Ruby
Plaintext
Plaintext
Given we like cukes
Ruby
Step
Ruby
Plaintext
Ruby
Plaintext
PlaintextGiven /^we like (.*)$/i do |fruit| fruit.should == 'cukes'end
Given we like cukes
Ruby
Step
Stepdefinition
Ruby
Plaintext
Ruby
Plaintext
PlaintextGiven /^we like (.*)$/i do |fruit| fruit.should == 'cukes'end
regexp match
Given we like cukes
Ruby
Step
Stepdefinition
Cucumber Style?
Problems
Global regular-expressions
Unmaintainable large step-definition files
Flexibility
Coverage vs. Speed tradeoffsComplex regular-expressions are hard to read
Workshop:“The writing’s on the wall”
5mins per example
Gherkin writing workshop
20mins
Go - Weiqi - Baduk
Feature
In order to prevent invalid moves
As a GoVsGO website member
I want the rules of Go enforced.
The Rules of Go
Capture After playing his stone a player removes from the board any stones of his opponent's colour that have no liberties.
SuicideA player cannot place a stone that would result in the capture of their own stones
KoOne may not play in such a way as to recreate the board position following one's previous move
Ending The game ends when both players have passed consecutively
Go Rules
How tasty is your Cucumber?
yum
Learnings
Not Exhaustive, key examples(Maths book)
Does not dictateintegration testing
Allow features to breathe
Why?
The Art of CucumberSeptember 27thSkillsmatters
http://theartofcucumber.eventbrite.com
Thanks
Joseph Wilkhttp://blog.josephwilk.net
@josephwilk
Its been emotional
Elise Huardhttp://jabberwocky.eu
@elise_huard