35
© 2013 imbus AG www.imbus.de Mobile Apps – wie testet man die? Thomas Roßner, CTO imbus AG für das Treffen der GI Regionalgruppe am 09.04.2013

Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

Embed Size (px)

Citation preview

Page 1: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de

Mobile Apps – wie testet man die?

Thomas Roßner, CTO imbus AG für das Treffen der GI Regionalgruppe am

09.04.2013

Page 2: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 2

imbus

!   Spezialisierter Lösungsanbieter für Software-Qualitätssicherung und Software-Test

!   Innovativ seit 1992

!   Erfahrung und Know-how aus über 4.000 erfolgreichen Projekten

!   200 Mitarbeiter an fünf Standorten in Deutschland

!   Joint Venture in Shanghai

Rostock Hamburg

Hannover

Magdeburg

Berlin

HQ Möhrendorf

Bremen

München

Erfurt Dresden

Stuttgart

GS München

Erlangen

Köln

Frankfurt

imbus Rhein-Main

imbus Rheinland

imbus Nord

Mobile Apps - wie testet man die?

Hamburg

Page 3: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 3

Lösungen

! Branchenspezifische Kompetenzzentren

! Technologieübergreifende Leistungen

! Inhouse, near shore, offshore

Mobile Apps - wie testet man die?

Page 4: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 4

Agenda

Mobile Apps - wie testet man die?

! Herausforderung „App Testing“

! Teststrategien für Apps ! Testziele und Testarten ! Teststufen und Testmethoden ! Testumgebungen und Testwerkzeuge

! Zusammenfassung

Page 5: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 5

Herausforderung 1: Problembewusstsein

! nur 31% der Unternehmen testen ihre mobilen Anwendungen (*)

„It‘s an area of our business that typifies how things are changing, in my opinion. The guys in marketing say ‚we need a mobile app‘; sales or product execs agree and then send it across to development and testing to push it through in half the time we might actually need. It‘s not going away either, more and more of our business is done online [in general] so it‘s something we need to get hold of and understand quickly.“ (Mitarbeiter einer britischen Retail-Firma)

Mobile Apps - wie testet man die? (*) World Quality Report 2012/2013

Page 6: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 6

Herausforderung 2: Expertise

! 34% haben keine passende Vorgehensweise (*)

„Mobile is certainly having a significant impact on the QA function and it seems that QA has been slow to react to the expectations from within the business. We would expect swift reassessment of testing priorities and increased investment over the coming year to handle the rush of mobile applications either in-house or with specialist providers.“ (aus dem Word Quality Report 2012/2013)

Mobile Apps - wie testet man die? (*) World Quality Report 2012/2013

Page 7: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 7

Herausforderung 3: Gerätevielfalt

! 52% verfügen nicht über die notwendigen Test-Devices (*)

Mobile Apps - wie testet man die?

http://opensignal.com/reports/fragmentation.php

(*) World Quality Report 2012/2013

Page 8: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 8

Herausforderung 4: Werkzeuge

! 65% sind nicht mit adäquaten Testwerkzeugen ausgestattet (*)

„ [...] the automation tools are still in their infancy, and none of them do what I need them to do yet.“ Jonathan Kohl, „Tap into mobile application testing“

Mobile Apps - wie testet man die? (*) World Quality Report 2012/2013

Page 9: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 9

Was ist an Apps denn so besonders?

! Plattform ! Hardware ! Betriebssysteme und -versionen ! Anwendungsarchitekturen ! Entwicklungsumgebungen

Mobile Apps - wie testet man die?

Page 10: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 10

Was ist an Apps denn so besonders?

Funktion ! Cloud Computing ! Software and Things ! In-App-Käufe ! ...

Mobile Apps - wie testet man die?

Page 11: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 11

Was ist an Apps denn so besonders?

! Bedienung ! Gesten ! Signale über Sensoren (Helligkeit,

Beschleunigung) ! Sprachein- und –ausgabe

! Nutzungsszenarien ! Ad hoc-Nutzung ! Ubiquität

Mobile Apps - wie testet man die?

Page 12: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 12

Was ist an Apps denn so besonders?

! Betriebsumgebung ! Geräte ! Mobilfunknetz ! Im Haus oder im Freien ! Geografischer Standort

Mobile Apps - wie testet man die?

Page 13: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 13

Agenda

Mobile Apps - wie testet man die?

! Herausforderung „App Testing“

! Teststrategien für Apps ! Testziele und Testarten ! Teststufen und Testmethoden ! Testumgebungen und Testwerkzeuge

! Zusammenfassung

Page 14: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 14

Teststrategien für Mobile Apps

Mobile Apps - wie testet man die?

Page 15: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 15

Agenda

Mobile Apps - wie testet man die?

! Herausforderung „App Testing“

! Teststrategien für Apps ! Testziele und Testarten ! Teststufen und Testmethoden ! Testumgebungen und Testwerkzeuge

! Zusammenfassung

Page 16: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 16

Testziele steuern den Testaufwand

! „Erschöpfender“ Test aller Eigenschaften ist i.a. nicht möglich

! Wichtige Eigenschaften müssen intensiver getestet werden als weniger wichtige

! Um wichtige Eigenschaften zu identifizieren, müssen wir sie ! priorisieren ! kategorisieren

Mobile Apps - wie testet man die?

Page 17: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 17

Produkteigenschaften als Testziele

Mobile Apps - wie testet man die?

Page 18: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 18

Testziele und Testarten (Auswahl)

! Funktionale Tests ! Vollständigkeit ! Korrektheit ! Angemessenheit

! End-to-End Tests ! Systemübergreifende Funktionalität

Mobile Apps - wie testet man die?

Page 19: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 19

Testziele und Testarten (Auswahl)

! Installation, Deinstallation, Update ! Schnittstellentest über Sandbox-

Grenzen hinweg

Mobile Apps - wie testet man die?

Page 20: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 20

Testziele und Testarten (Auswahl)

! Lokalisierungstest ! Styleguide-Test ! Usability Test ! Geschlossene und offene Beta

! Usability ist entscheidender Erfolgsfaktor ! Differenzierungsmerkmal ! u.U. zulassungsrelevant z.B. bei

Medical Apps

Mobile Apps - wie testet man die?

Page 21: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 21

Testziele und Testarten (Auswahl)

! Funktionale Negativtests und Stresstests ! Verbindungsfehler und –abbrüche ! Unterbrechungen durch Anrufe,

Nachrichten ! Knapp werdender Speicherplatz ! Stromsparfunktionen ! Batteriewarnung und Herunterfahren ! Hintergrund-Ausführung ! Entzug von Berechtigungen

Mobile Apps - wie testet man die?

Page 22: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 22

Testziele und Testarten (Auswahl)

! Lokale Performanzmessungen ! Lasttests des Gesamtsystems aus

! App (Gerät und App-Code) ! Netzwerk (Latenz und Bandbreite) ! Server (Durchsatz)

! Elastizitätstest (bei Cloud-Lösungen)

Mobile Apps - wie testet man die?

Page 23: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 23

Testziele und Testarten (Auswahl)

! Penetrationstests ! Funktionale Tests von

Sicherheitsfunktionen ! Tests der Umsetzung von

Sicherheitsrichtlinien (insbesondere bei BYOD)

Mobile Apps - wie testet man die?

Page 24: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 24

Agenda

Mobile Apps - wie testet man die?

! Herausforderung „App Testing“

! Teststrategien für Apps ! Testziele und Testarten ! Teststufen und Testmethoden ! Testumgebungen und Testwerkzeuge

! Zusammenfassung

Page 25: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 25

Teststufen reduzieren Aufwand für Fehlerfindung und -behebung

! Fehler so früh wie möglich finden – spart Behebungskosten

! Kosten-Nutzen-Verhältnis der Tests optimieren – jeden Test dort machen, wo er am günstigsten zu realisieren ist

! Redundanzen vermeiden

Mobile Apps - wie testet man die?

Page 26: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 26

Teststufen für Mobile Apps

Mobile Apps - wie testet man die?

App Store Review

Beta-Test

Systemintegrationstest

App-Test

Integrationstest

Unit-Test Nic

htfu

nktio

nale

Tes

ts

Funk

tiona

le T

ests

Page 27: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 27

Testmethoden sorgen für skalierbare Tests

! Manche Testmethoden prüfen Code-Eigenschaften, manche Produkt-Eigenschaften – passend zu verschiedenen Teststufen

! Wichtige Eigenschaften mit vielen/intensiven Testfällen prüfen, weniger wichtige mit wenigen Testfällen

! Testmethoden sind i.a. skalierbar, d.h. Für mehr „spendierten“ Testaufwand erhält man mehr/ bessere/ aussagekräftigere Tests

Mobile Apps - wie testet man die?

(*) Praxiswissen SW-Test: Testmanagement. dpunkt-Verlag

Testmethode: Planmäßiges, auf einem Regelwerk aufbauendes Vorgehen zur Herleitung

und/oder Auswahl von Testfällen (*)

Page 28: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 28

ISTQB Certified Tester – das Testmethoden-Kochbuch

! formale Methoden und erfahrungsbasierte Methoden

! White Box- und Black Box-Methoden

! Funktionale und nichtfunktionale Tests

! Manuelle und automatisierbare Tests

! Trainings: www.imbus.de/akademie

Mobile Apps - wie testet man die?

Page 29: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 29

Agenda

Mobile Apps - wie testet man die?

! Herausforderung „App Testing“

! Teststrategien für Apps ! Testziele und Testarten ! Teststufen und Testmethoden ! Testumgebungen und Testwerkzeuge

! Zusammenfassung

Page 30: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 30

Teststufen und Testwerkzeuge – Beispiel Funktionale Testautomatisierung

Mobile Apps - wie testet man die?

App Store Review

Beta-Test

Systemintegrationstest

App-Test

Integrationstest

Unit-Test Uni

t Tes

t Fr

amew

ork In

tegr

atio

n Te

st F

W (U

I-) T

esta

utom

at

Con

tinuo

us In

tegr

atio

n Bet

a D

istri

butio

n

Page 31: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 31

Die Qual der Wahl bei Testautomatisierungswerkzeugen

! Sandboxes erhöhen die Sicherheit und Robustheit – aber sie senken die Automatisierbarkeit

! HW/SW-Testrahmen: teuer, aufwändig, evtl fehleranfällig

! Agenten-Technologie: günstig, aber ! „you don‘t test what you deliver“ ! app-übergreifende Automatisierung

schwierig bis unmöglich ! Jailbreak/Rooting: günstig und app-

übergreifend, aber ! machen Sicherheitstests sinnlos ! sind wenig zukunftssicher

Mobile Apps - wie testet man die?

Page 32: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 32

Testumgebungen passend zur Teststufe

Mobile Apps - wie testet man die?

App Store Review

Beta-Test

Systemintegrationstest

App-Test

Integrationstest

Unit-Test Ent

wic

klun

gs-u

mge

bung

Sim

ulat

or

Ger

ät C

row

d

In th

e C

loud

Page 33: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 33

Agenda

Mobile Apps - wie testet man die?

! Herausforderung „App Testing“

! Teststrategien für Apps ! Testziele und Testarten ! Teststufen und Testmethoden ! Testwerkzeuge und Testumgebungen

! Zusammenfassung

Page 34: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 34

Die sechs „T“ und ihr Nutzen

! Test- ! Ziele steuern die optimale Verteilung des Testaufwands ! Arten unterfüttern die Testziele mit passenden Prüfstrategien ! Stufen sorgen für frühes und kostengünstiges Finden von Fehlern ! Methoden erzeugen wiederholbare, zuverlässige Testfälle ! Werkzeuge unterstützen den Testprozess – sie ersetzen ihn nicht ! Umgebungen machen die Testdurchführung „produktionsnah“

! Systematisches Testen ! ist auch bei Apps das richtige Vorgehen ! spart Kosten durch frühzeitige Fehlerfindung ! Ist ein Investment, das sorgfältig geplant und umgesetzt werden muss

! Neue Testansätze helfen ! Simulatoren reduzieren den Umfang des notwendigen Geräteparks ! Continuous Testing and Integration verlagert den Test „nach vorne“ ! Crowd Testing und Testing in the Cloud testen „in der Breite“

Mobile Apps - wie testet man die?

Page 35: Mobile Apps – wie testet man die? - rg-nuernberg.gi.derg-nuernberg.gi.de/uploads/media/20130409_MobileApps... · Mobile Testing Services (inkl. Cloud und Crowd) ! Beratung für

© 2013 imbus AG www.imbus.de Folie 35

Next Steps für App-Hersteller und -auftraggeber

! Trainings und Workshops zum Mobile Testing

! Mobile Testing Services (inkl. Cloud und Crowd)

! Beratung für die eigene App Test Governance

! imbus TestBench – das Kontrollzentrum für Ihre Tests

Mobile Apps - wie testet man die?

www.imbus.de www.testbench.info

[email protected] thomas.rossner

@imbus.de

@imbus_AG @trossner