Testing Native Apps at PAYBACK

13
Testing native Apps at PAYBACK Marcel Gehlen, Munich, 2016-01-27

Transcript of Testing Native Apps at PAYBACK

Testing native Apps at PAYBACK Marcel Gehlen, Munich, 2016-01-27

2

We like to share 7 things we have learned about testing native Apps.

Presentation label - change over INSERT in HEADER AND FOOTER

maybe you can

apply them

maybe you

diagree

hopefully you

engage in

discussion

3

Lesson 1: It's mobile (you know what's coming)!

Presentation label - change over INSERT in HEADER AND FOOTER

tools are not as

mature as we

hoped

device and os

diversity

user contexts

are a key factor

who uses your app?

on which device?

when and where?

4

Lesson 2: Product Owner, Developer, Tester and UX Designers sit and work together.

Presentation label - change over INSERT in HEADER AND FOOTER

dear PO, do you really

want the feature like

this?

dear iOS developers,

how will you

implement this?

dear tester, can we

make stories easier

for automated checks?

dear developer, here

is a draft so you can

start coding.

tester developer

product owner

ux designer

5

Lesson 2: Product Owner, Developer, Tester and UX Designers sit and work together.

Presentation label - change over INSERT in HEADER AND FOOTER

Talking to each other is good! (should go without saying, but a reminder can't hurt)

6

Lesson 3: We use different kinds of testing.

Presentation label - change over INSERT in HEADER AND FOOTER

automated

checks

exploratory

testing beta tests

check for changes, make sure

you can actually use the app

explore what the app really does

(and when … and where)

remember the user

and her context

7

Lesson 4: using automatation to help you test.

Presentation label - change over INSERT in HEADER AND FOOTER

automated

checks

Sub lesson: don't try to automatically check something completely, that is supposed to interact with people.

unit tests

(for logic)

unit tests

(for screens)

end-to-end tests

user journeys

jUnit

XCTest

Espresso

XCTest

Appium (JAVA)

& jGiven

emu-/ simulator

mock dependencies

emu-/ simulator

mock dependencies

real devices

full system stack

Checking Type Tools Environment

*the most

*the fewest

8

Lesson 4: using automatation to help you test.

Presentation label - change over INSERT in HEADER AND FOOTER

Sub lesson: we use automation for more than just checking, for example:

data generation push new texts

into the app

9

Lesson 5: what we do in our manual test session.

Presentation label - change over INSERT in HEADER AND FOOTER

checklists &

mindmaps mnemonics

fabrics user device

information

What we do:

What helps us:

• Ministry of Testing

• Adventures in QA

• I SLICED UP FUN

• SFDPOT

• Distribution

• Crash Reporting

• which devices?

• which features?

10

Lesson 6: we want the app used by many people, so we have many people look at it.

Presentation label - change over INSERT in HEADER AND FOOTER

distributed with fabrics

very friendly users

distributed with fabrics

friendly users

crowd testing platform

beta users

create more user contexts

have some of your users look a t the app (before they can go wild on store reviews)

have a fresh set of eyes on your app from time to time

Sub lesson: beta tests are really good

11

Lesson 7: don't unlearn what you have learned.

Presentation label - change over INSERT in HEADER AND FOOTER

Don't just "build an app"! (stuff like CI servers, code checks and pair reviews exist for a reason)

12

How we piece it all together.

PAYBACK Chart library_E

new idea

implement

explore

show

can we add something?

how can we build it?

how will we test it?

unit tests every 15 minutes

other checks every 2 hours

upload to fabrics

manual est sessions

engage very friendly users

upload for beta testers

listen!

13

PAYBACK GmbH

Gehlen Marcel

Mobile Tester

Theresienhöhe 12

80339 München

Phone +49 (0) 89 997 41 – 0

[email protected]

PAYBACK.net | PAYBACK.de

HAD FUN?