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

Automated Mobile Acceptance Testing Presentation - mdevcon 2013

Automated Mobile Acceptance Testing Presentation - mdevcon 2013

Pete Hodgson

March 15, 2013

More Decks by Pete Hodgson

Other Decks in Programming


  1. Automated Acceptance Testing mdevcon 2013

  2. Pete Hodgson @ph1

  3. None
  4. we are hiring

  5. None
  6. examples are iOS same principles across platforms

  7. Straw Poll

  8. Straw Poll AppCode ~ or ~ XCode

  9. Straw Poll IntelliJ ~ or ~ Eclipse

  10. None
  11. we all test

  12. why do we test?

  13. does it work?

  14. does it still work?

  15. does it work on ?

  16. testing provides feedback

  17. why don’t we test?

  18. manual testing can be expensive

  19. manual testing can be tedious

  20. “Computers are designed to do simple repetitive tasks. The second

    you have humans doing repetitive tasks, all the computers get together late at night and laugh at you…” - Neal Ford
  21. so automate your tests (where it makes sense)

  22. testing provides feedback

  23. testing provides feedback automated better

  24. testing provides feedback automated faster

  25. testing provides feedback automated broader

  26. testing provides feedback automated uniform

  27. None
  28. types of automated testing

  29. Mobile App End User Backend Services

  30. Unit Test Mobile App End User Backend Services

  31. Mobile App End User Backend Services Integration Test

  32. Acceptance Test Mobile App End User Backend Services

  33. Acceptance Test Mobile App End User Backend Services The App

  34. Acceptance Unit Integration

  35. demo!

  36. None
  37. I love it! How do I do it?

  38. iOS Frank Calabash KIF Appium UIAutomation

  39. Android Calabash Robotium Instrumentation

  40. Mobile Web iPhoneDriver/AndroidDriver chromedriver headless WebDriver webdriver-user-agent

  41. None
  42. the UI testing triad

  43. None
  44. select a bit o UI

  45. select a bit o UI simulate interaction with it

  46. select a bit o UI simulate interaction with it inspect

    state o it
  47. UI select interact inspect







  54. UI select interact inspect

  55. UI select interact inspect

  56. user simulation touch(...) type_into_keyboard(...) set_orientation(...) double_tap(...) tap_and_hold(...) drag_with_initial_delay(...)

  57. simulating gestures

  58. UI select interact inspect

  59. UI select interact inspect

  60. touch(...)

  61. touch(...) what?

  62. None
  63. view selectors

  64. view selectors a little language to specify which views you

    are interested in e.g. CSS or XPath
  65. demo!

  66. good view selectors == sustainable tests

  67. accessibility is your best friend

  68. record-and-playback test suites are not sustainable

  69. UI select interact inspect

  70. UI select interact inspect

  71. demo!

  72. interact inspect select UI

  73. putting it all together

  74. demo!

  75. thanks. questions?

  76. more questions? @ph1 http://blog.thepete.net phodgson@thoughtworks.com me, at the bar feedback:

    rate.thepete.net this deck: slides.thepete.net