Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Automated Acceptance Testing

Automated Acceptance Testing

My talk on using Calabash for Automated Acceptance Testing at CocoaHeads Durham

Josh Johnson

July 29, 2012
Tweet

More Decks by Josh Johnson

Other Decks in Programming

Transcript

  1. Automated
    Acceptance Testing
    or: How I stopped worrying and
    trusted the tests
    by Josh Johnson - @jnjosh

    View Slide

  2. Disclaimer.
    (I haven’t always tested)

    View Slide

  3. So, testing...

    View Slide

  4. Acceptance Testing

    View Slide

  5. Frank
    KIF

    View Slide

  6. View Slide

  7. calaba.sh
    http://

    View Slide

  8. How does it work?

    View Slide

  9. View Slide

  10. As a role
    I want action
    In order to goal

    View Slide

  11. Given context
    When event occurs
    Then ensure outcome

    View Slide

  12. So, what does this look like?

    View Slide

  13. View Slide

  14. Feature: Cool Button View
    As a user of Cool Button App
    I want to be able to press buttons
    So I can see cool text and images

    View Slide

  15. Feature: Cool Button View
    As a user of Cool Button App
    I want to be able to press buttons
    So I can see cool text and images
    Scenario: Hello displays message
    Given the app is running
    When I touch "Hello"
    Then I see the text "Hello CocoaHeads!"

    View Slide

  16. View Slide

  17. Feature: Cool Button View
    As a user of Cool Button App
    I want to be able to press buttons
    So I can see cool text and images
    Scenario: Hello displays message
    Given the app is running
    When I touch "Hello"
    Then I see the text "Hello CocoaHeads!"
    Scenario: Cool displays image
    Given the app is running
    When I touch "Cool"
    Then I see the "hoff"

    View Slide

  18. View Slide

  19. View Slide

  20. Cool!

    View Slide

  21. View Slide

  22. Remember when I said “Device”
    testing and “Rotation”?

    View Slide

  23. www.lesspainful.com

    View Slide

  24. video courtesy lesspainful.com
    http://www.youtube.com/watch?v=fX4TLdf02L4

    View Slide

  25. Robots!*

    View Slide

  26. Robots!
    * well, not exactly robots, but it is still pretty cool
    *

    View Slide

  27. So, How did you stop
    worrying and trust the
    tests?

    View Slide

  28. Use something that
    makes it easy.

    View Slide

  29. Make it a deliverable.

    View Slide

  30. Questions?

    View Slide

  31. Thanks!
    calaba.sh
    http://

    View Slide