Acceptance Test-Driven Development for iOS (Slide Share)

  • View
    396

  • Download
    2

Embed Size (px)

Transcript

  1. 1. Acceptance Testing on iOS How to answer the question can we submit yet? in minutes not days. http://x.industries
  2. 2. Acceptance Testing? Who should write them? What level of detail is sufficient? Whos reading them? How should we test them? What language do we use? What tool should we write them with? When do we write them?
  3. 3. Specifying Software Requirements Acceptance Test-Driven Development Code Fast, Reliable Acceptance Tests on iOS Acceptance Testing
  4. 4. Fluffy Bunny WAT? Insufcient Detail
  5. 5. Boss Programmer User Detail QA X X XX BA Level of detail needed by role to complete a software related task
  6. 6. Wireframe Specification How do you test this? Lacks Detail
  7. 7. Mobile Testing Appium KifSubliminal Zuchinni Calabash Frank UIAutomation Cucumber BDD!
  8. 8. User Interface Centric Based on Wireframes or Stories Written after development by QA Mobile Acceptance Testing
  9. 9. Doesnt scale (slow, fragile, complex) Developer effort required to maintain Doesnt exercise all the business logic Terrible defect localisation Business doesnt write or read them Abandoned, revert to manual testing Mobile Acceptance Testing
  10. 10. This is mobile. Its how its gotta be. - C. Wisdom
  11. 11. Acceptance Test-Driven Development (ATDD) Detailed requirements are written Entire team writes them together Understandable by entire team Statements are binary (true or false) Does not describe UI Executable and automated
  12. 12. Fully integrated standalone wiki and acceptance testing framework David Parnus Ward Cunningham Micah Martin Robert Martin
  13. 13. Read, Write, Execute the requirements Works with everything (Mac, iOS, Android)
  14. 14. FitNesse Fixtures System Slim Instructions Web Browser Device Views View Controllers System Touch EventsHuman Slim Responses Updates Terminal FitNesseFitNesse App App
  15. 15. Final Thoughts UI based Acceptance Testing doesnt scale Acceptance testing is an essential part of Agile Elaborating the requirements early saves time & effort Acceptance testing can really takes minutes, not days
  16. 16. Accepting Testing on iOS - Tutorial stringerstheory.net/acceptance-testing-with-ios Behaviour Driven Development cleancoders.com/videos/clean-code
  17. 17. Mastering TDD/BDD for iOS 24th-25th May at CodeNode, London. @paulstringer paulstringer@mac.com http://stringerstheory.net Discount Code8THLIGHT