Transcript

Acceptance Testing on iOS How to answer the question “can we submit yet?” in minutes not days.

http://x.industries

Acceptance Testing?

Who should write them?

What level of detail is sufficient?

Who’s reading them?

How should we test them?

What language do we use?

What tool should we write them with?

When do we write them?

Specifying Software Requirements

Acceptance Test-Driven Development

Code Fast, Reliable Acceptance Tests on iOS

Acceptance Testing

‘Fluffy Bunny’WAT?

Insufficient Detail

Boss Programmer User

Deta

il

QA

X

X

XX

BA

Level of detail needed by role to complete a software related task

Wireframe Specification

How do you test this?

Lacks Detail

Mobile Testing

Appium

KifSubliminal

Zuchinni

Calabash

Frank

UIAutomationCucumber

BDD!

User Interface Centric

Based on Wireframes or Stories

Written after development by QA

Mobile Acceptance Testing

Doesn’t scale (slow, fragile, complex)

Developer effort required to maintain

Doesn’t exercise all the business logic

Terrible defect localisation

Business doesn’t write or read them

Abandoned, revert to manual testing

Mobile Acceptance Testing

“This is mobile. It’s how its gotta be.”

- C. Wisdom

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

Fully integrated standalone wiki and acceptance testing framework

David ParnusWard Cunningham Micah Martin

Robert Martin

Read, Write, Execute the requirements

Works with everything (Mac, iOS, Android)

FitNesse<Slim Server> Fixtures System

Slim Instructions

Web Browser

DeviceViews View

Controllers SystemTouch EventsHuman

Slim Responses

Updates

Terminal

FitNesseFitNesse

App

App

Final Thoughts

UI based Acceptance Testing doesn’t scale

Acceptance testing is an essential part of Agile

Elaborating the requirements early saves time & effort

Acceptance testing can really takes minutes, not days

Accepting Testing on iOS - Tutorial stringerstheory.net/acceptance-testing-with-ios

Behaviour Driven Development cleancoders.com/videos/clean-code

Mastering TDD/BDD for iOS24th-25th May at CodeNode, London.

@paulstringer [email protected]

http://stringerstheory.net

Discount Code “8THLIGHT”


Recommended