Mobile Automation & Mobile Device Cloud · JavaScript mit Xcode - Nur auf OS X ... Java mit UI...

Post on 20-Jun-2020

9 views 0 download

Transcript of Mobile Automation & Mobile Device Cloud · JavaScript mit Xcode - Nur auf OS X ... Java mit UI...

Mobile Automation & Mobile Device Cloud

Schlechte Qualität zeigt sich in der mobilen Welt besonders schnell . schnell

44% erzählen ihren freunden Von einer schlechten online-Erfahrung

44%

Fazit Wir müssen testen!

Fazit

Gerätechaos Teuer, Langsam, Unsicher

27.04.2016 – Intern – René Habermann 7

Gerätechaos

Mobile Device Cloud Aufbau

– Intern – René Habermann 8 27.04.2016

Portal Server

Device Host

Device Host

Device Host

Cloud

Mobile Device Cloud Aufbau

– Intern – René Habermann 9 27.04.2016

Portal Server

Device Host

Device Host

Device Host

Cloud

anual

utomation

Mobile Device Cloud

– Intern – René Habermann 10 27.04.2016

Kernfeatures

Gerätevielfalt, Versionsvielfalt

Flexibilität

Verfügbarkeit

App Verwaltung

Abrechenbarkeit

Mobile Device Cloud

– Intern – René Habermann 11 27.04.2016

Kernfeatures

Gerätevielfalt, Versionsvielfalt

Flexibilität

Verfügbarkeit

App Verwaltung

Abrechenbarkeit

Mobile Device Cloud

– Intern – René Habermann 12 27.04.2016

Kernfeatures

Gerätevielfalt, Versionsvielfalt

Flexibilität

Verfügbarkeit

App Verwaltung

Abrechenbarkeit

Mobile Device Cloud

– Intern – René Habermann 13 27.04.2016

Kernfeatures

Gerätevielfalt, Versionsvielfalt

Flexibilität

Verfügbarkeit

App Verwaltung

Abrechenbarkeit

Mobile Device Cloud

– Intern – René Habermann 14 27.04.2016

Kernfeatures

Gerätevielfalt, Versionsvielfalt

Flexibilität

Verfügbarkeit

App Verwaltung

Abrechenbarkeit

Manueller Zugriff Video entfernt

– Intern – René Habermann 15 27.04.2016

Systemkonfigurationen

– Intern – René Habermann 16 27.04.2016

Testmultiplikatoren

Systemkonfigurationen

– Intern – René Habermann 17 27.04.2016

5.x 4.x

2.3.x

9.x 8.x 7.x

Testmultiplikatoren

Systemkonfigurationen

– Intern – René Habermann 18 27.04.2016

5.x 4.x

2.3.x

9.x 8.x 7.x

Testmultiplikatoren

Systemkonfigurationen

– Intern – René Habermann 19 27.04.2016

5.x 4.x

2.3.x

9.x 8.x 7.x

= zu viel!

= zu viel!

36

Testmultiplikatoren

Systemkonfigurationen

– Intern – René Habermann 20 27.04.2016

5.x 4.x

2.3.x

9.x 8.x 7.x

= zu viel!

= zu viel!

36

Testmultiplikatoren

Aber bitte gegen alle 4 Umgebungen!

Systemkonfigurationen

– Intern – René Habermann 21 27.04.2016

9.x 8.x 7.x

= zu viel!

= zu viel!

36

Testmultiplikatoren

Aber bitte gegen alle 4 Umgebungen!

Und mit den 3 App Builds.

5.x 4.x

2.3.x

App 2 App 1

Automatisierung Naiver Ansatz

– Intern – René Habermann 22 27.04.2016

App 2 App 1

Automatisierung Naiver Ansatz

– Intern – René Habermann 23 27.04.2016

Funktion B Funktion A Funktion C Funktion B Funktion A Funktion C

App 2 App 1

Automatisierung Naiver Ansatz

– Intern – René Habermann 24 27.04.2016

Automatisierung 1 - Java mit UI Automator Automatisierung 2 - JavaScript mit Xcode - Nur auf OS X

Funktion B Funktion A Funktion C Funktion B Funktion A Funktion C

App 2 App 1

Automatisierung Naiver Ansatz

– Intern – René Habermann 25 27.04.2016

Automatisierung 1 - Java mit UI Automator Automatisierung 2 - JavaScript mit Xcode - Nur auf OS X

Funktion B Funktion A Funktion C Funktion B Funktion A Funktion C

App 2 App 1

Automatisierung Naiver Ansatz

– Intern – René Habermann 26 27.04.2016

Automatisierung 1 - Java mit UI Automator Automatisierung 2 - JavaScript mit Xcode - Nur auf OS X

Funktion B Funktion A Funktion C Funktion B Funktion A Funktion C

Was passiert, wenn sich Funktion C ändert?

App 2 App 1

Automatisierung Naiver Ansatz

– Intern – René Habermann 27 27.04.2016

Automatisierung 1 - Java mit UI Automator Automatisierung 2 - JavaScript mit Xcode - Nur auf OS X

Funktion B Funktion A Funktion C Funktion B Funktion A Funktion C

6 Testfälle müssen angepasst werden. Schlechte Wartbarkeit!

App 2 App 1

Automatisierung Abstrahieren!

– Intern – René Habermann 28 27.04.2016

Automatisierung 1 - Java mit UI Automator Automatisierung 2 - JavaScript mit Xcode - Nur auf OS X

Funktion B Funktion A Funktion C Funktion B Funktion A Funktion C

Abstrakt B Abstrakt A Abstrakt C Abstrakt B Abstrakt A Abstrakt C

App 2 App 1

Automatisierung Abstrahieren!

– Intern – René Habermann 29 27.04.2016

Automatisierung 1 - Java mit UI Automator Automatisierung 2 - JavaScript mit Xcode - Nur auf OS X

Funktion B Funktion A Funktion C Funktion B Funktion A Funktion C

Abstrakt B Abstrakt A Abstrakt C Abstrakt B Abstrakt A Abstrakt C

2 Abstraktionen müssen angepasst werden. Bessere Wartbarkeit.

Automatisierung Einheitliche Technologie

– Intern – René Habermann 30 27.04.2016

Automatisierung – Java mit Xeta

Abstrakt B Abstrakt A Abstrakt C

App 2 App 1

Funktion B Funktion A Funktion C Funktion B Funktion A Funktion C

Automatisierung Einheitliche Technologie

– Intern – René Habermann 31 27.04.2016

Automatisierung – Java mit Xeta

Abstrakt B Abstrakt A Abstrakt C

App 2 App 1

Funktion B Funktion A Funktion C Funktion B Funktion A Funktion C

Abstrakt E Abstrakt D

Weniger Duplizierung, mehr Zeit zum Automatisieren

Automatisierung Einheitliche Technologie

– Intern – René Habermann 32 27.04.2016

Automatisierung – Java mit Xeta

Abstrakt B Abstrakt A Abstrakt C

App 2 App 1

Funktion B Funktion A Funktion C Funktion B Funktion A Funktion C

Abstrakt E Abstrakt D

Nur noch eine Anpassung. Endlich Wartbar!

Mobile Automatisierung Grundsätze

– Intern – René Habermann 33 27.04.2016

Einheitliche Technologie

Passende Abstraktionen

Mobile Automatisierung Grundsätze

– Intern – René Habermann 34 27.04.2016

Einheitliche Technologie

Passende Abstraktionen

Die große Toolfrage

Mobile Automatisierung Grundsätze

– Intern – René Habermann 35 27.04.2016

Einheitliche Technologie

Passende Abstraktionen

Die große Toolfrage

z.B. aufgebohrtes Page Object Pattern

1 Skript, 1000 Ausführungen

– Vertraulich – André Hirsch 36 27.04.2016

1 Testskript

2 Praxisbeispiele

App - Sendungsverfolgung Lösung

– Intern – René Habermann 38 27.04.2016

Native App

App - Sendungsverfolgung Lösung

– Intern – René Habermann 39 27.04.2016

Native App

Automatisierung Java mit Xeta

70% Wiederverwendung

App - Sendungsverfolgung 1 Skript, 2 Plattformen

– Intern – René Habermann 40 27.04.2016

Testskript

Abstrakt

Page A Page B

Android Page A

iOS Page A

Android Page B

iOS Page B

Konkret 30%

70%

Continuous Integration Unstable Build

– Intern – René Habermann 41 27.04.2016

Kunde MMS

Cloud

Continuous Integration Testing Build

– Intern – René Habermann 42 27.04.2016

Kunde MMS

Cloud

App - Sendungsverfolgung Vorteile

– Intern – René Habermann 43 27.04.2016

Einheitliche Technologie

Hohe Wartbarkeit, Erweiterbarkeit

Vollautomatischer Buildprozess

Verringerte Testaufwände

– Intern – René Habermann 44 27.04.2016

Bestellcenter

GK Relaunch im responsive

design

Bestellcenter GK Responsive Design

– Intern – René Habermann 45 27.04.2016

Bestellcenter GK Desktop & Mobile browser

– Intern – René Habermann 46 27.04.2016

Bestellcenter GK Desktop & Mobile browser

– Intern – René Habermann 47 27.04.2016

Ziel, wie immer: Nur 1 Skript

Bestellcenter GK Lösung

– Intern – René Habermann 48 27.04.2016

Mobile Desktop

1 Skript

Bestellcenter GK Lösung

– Intern – René Habermann 49 27.04.2016

Mobile Desktop

1 Skript

Bestellcenter GK Lösung

– Intern – René Habermann 50 27.04.2016

Mobile Desktop

1 Skript

80% Wiederverwendung

Bestellcenter GK Vorteile

– Intern – René Habermann 51 27.04.2016

Einheitliche Technologie

Hohe Wartbarkeit, Erweiterbarkeit

Vollautomatischer Buildprozess

Verringerte Testaufwände

Fragen? Erfahrungen?

Danke