Calabash
Pedro Carmona - Whitesmith
Coimbra.rb
21 de Março de 2014
Slide 2
Slide 2 text
Testing
• Unit (scope: object)
• Integration (scope: system)
• Acceptance - Customers are responsible for
verifying the correctness of the acceptance tests
Slide 3
Slide 3 text
Test Driven Development
!
• From red to green
Image http://4.bp.blogspot.com/_9kQQgQD35rY/SaV5p8YBGhI/AAAAAAAAAkg/HOvlhIo7yGI/s1600-h/06_Red_Green_Refactor.JPG
Slide 4
Slide 4 text
Behavior Driven
Development
• Purpose: Question the App behavior before and
during development.
• From red to green + natural language
Slide 5
Slide 5 text
BDD reasons
• Strengthen the collaboration of managers,
developers and clients.
• Developers know what use cases and scenarios
the tests must cover.
• Code easier to maintain.
Slide 6
Slide 6 text
Cucumber
• Ruby gem for Behavior Driven Development.
• Very readable, maintainable and elegant.
• DSL - Gherkin
Slide 7
Slide 7 text
Calabash
• Acceptance and funcional automated tests.
• Port Cucumber to mobile development.
• Developed by Less Painful (acquired by Xamarin in
March 2013)
Slide 8
Slide 8 text
DSL Gherkin
Feature:
In order to
As an
I want to
Scenarios:
Given
When
Then
Slide 9
Slide 9 text
Demo
calabash + android
Slide 10
Slide 10 text
- Gregg Rothmeier , bignerdranch.com
“Tools don’t make bad tests, developers do”