34
Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

Page 2: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

2

Agenda

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

§  Ziel dieses Vortrags

§  Grundzüge des agilen Testens

§  Voraussetzungen für agiles Testen

§  Vorstellung der agilen Testquadranten

§  Die Testpyramide

§  Anwendungsbeispiele für die Umsetzung agiler Tests

§  Fazit, Fragen, Diskussion, Kontakt

Page 3: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

3

© 2014 andrena objects ag

§  Der Vortrag gibt eine grundlegende Übersicht, wie Entwicklungsteams von Anfang an dem Aufhäufen von technischen Schulden und Fehlern entgegenwirken können, indem sie konsequent agile Testtechniken im Entwicklungsprozess verankern

§  Zunächst findet eine grundlegende Begriffsklärung zum agilen Testen statt

§  Im Anschluss werden Anwendungsbeispiele verschiedener Aspekte vorgestellt

Ziel dieses Vortrags

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Page 4: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

4

Agenda

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

§  Ziel dieses Vortrags

§  Grundzüge des agilen Testens

§  Voraussetzungen für agiles Testen

§  Vorstellung der agilen Testquadranten

§  Die Testpyramide

§  Anwendungsbeispiele für die Umsetzung agiler Tests

§  Fazit, Fragen, Diskussion, Kontakt

Page 5: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

5

Vorüberlegungen

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Relative Kosten zur Beseitigung von Fehlern

100

10

3

1 Anforder

ungen

Code

Test

Produktion

Relative Kosten zur Fehlerbeseitigung nach Lebensdauer

100 % 100 %

ohne agile Tests mit agilen Tests

Kapazität für Features vs. Bugs

Page 6: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

6

Grundzüge des agilen Testens I

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Exkurs: agile Entwicklungsprozesse (Scrum etc.) verfolgen das Ziel

§  fertige Software zum Ende des Entwicklungszyklus auszuliefern

§  eine hohe Entwicklungsgeschwindigkeit bei effizientem Aufwand zu ermöglichen

Agiles Testen verfolgt den Ansatz

§  Testen und Entwickeln zeitlich und eng zu verzahnen §  eine möglichst hohe Testabdeckung der Software zu erzeugen

§  mangelhafte Codequalität bzw. Bugs so früh als möglich offen zu legen, um frühzeitige Korrekturmaßnahmen zu ermöglichen

§  die entwickelte Funktionalität auch über den Entwicklungszyklus hinaus gegen Seiteneffekte bei Erweiterungen abzusichern.

Page 7: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

7

Grundzüge des agilen Testens II

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Zielbild

§  Entwicklungsteam liefert am Ende des Entwicklungszyklus funktionierende Software ab, die im Anschluss produktiv genutzt werden kann

§  Automatisierte Akzeptanztests sichern neben den Entwicklertests das bestehende Verhalten

§  Ggf. erforderliche manuelle Tests werden nach einem schlanken Verfahren durchgeführt

§  Das fertige Entwicklungsinkrement wird so zeitnah als möglich in die Produktion überführt

Page 8: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

8

Agenda

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

§  Ziel dieses Vortrags

§  Grundzüge des agilen Testens

§  Voraussetzungen für agiles Testen

§  Vorstellung der agilen Testquadranten

§  Die Testpyramide

§  Anwendungsbeispiele für die Umsetzung agiler Tests

§  Fazit, Fragen, Diskussion, Kontakt

Page 9: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

9

Voraussetzungen für agiles Testen I

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Agile Software Engineering (ASE) I

§  Agile Entwicklungstechniken (XP, Clean Code) innerhalb des Entwicklungsteams

§  automatisierte Tests auf verschiedenen Ebenen

§  konsequente Refactorings zur Vermeidung technischer Schulden

§  Testisolationswerkzeuge und -techniken einsetzen, um wiederholbare Tests zu produzieren und Testlaufzeiten zu verkürzen.

Page 10: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

10

Voraussetzungen für agiles Testen II

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Agile Software Engineering (ASE) II

§  Testabdeckungsgrad einer Software sollte ermittelt werden können, um

§  Testlücken gezielt schließen zu können

§  Refactorings gefahrlos durchführen zu können

§  Ergebnis der automatisierten Tests muss für Entwickler sichtbar sein

§  Stichwort: „Continuous Integration“

§  Stichwort: „Early Feedback“

§  Rasches Gegensteuern im Fehlerfall

Page 11: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

11

Agenda

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

§  Ziel dieses Vortrags

§  Grundzüge des agilen Testens

§  Voraussetzungen für agiles Testen

§  Vorstellung der agilen Testquadranten

§  Die Testpyramide

§  Anwendungsbeispiele für die Umsetzung agiler Tests

§  Fazit, Fragen, Diskussion, Kontakt

Page 12: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

12

Alle Tests

Agile Testquadranten

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Für d

as T

eam

Für das Produkt

fachlich

technisch

Q2

Q1

Q3

Q4

Page 13: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

13

Alle Tests

Agile Testquadranten

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Q2

Q1

Q3

Q4

Für d

as T

eam

Für das Produkt

fachlich

technisch

Entwicklertests §  Unit Tests §  Komponententests

Ziel §  Verbesserung der internen Qualität

(Struktur der Software, Schichtung) §  Testbarkeit herstellen

Effekt §  Team kann schneller arbeiten §  Sicherheitsnetz für Refactorings §  Team wird selbstbewusster und mutiger

automatisiert

Page 14: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

14

Alle Tests

Agile Testquadranten

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Q2

Q1

Q3

Q4

Für d

as T

eam

Für das Produkt

fachlich

technisch

Entwicklertests §  Unit Tests §  Komponententests

Ziel §  Verbesserung der externen Qualität §  Kooperation von Anwendern und Entwicklern

§  Fallkonstellationen §  Beispiele

Effekt §  Fallkonstellationen in Tests umwandeln mittels

Test-Werkzeugen

automatisiert

automatisiert / manuell

Funktionstests §  Beispiele §  Prototypen §  Story Tests §  Simulationen

Page 15: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

15

Alle Tests

Funktionstests §  Beispiele §  Prototypen §  Story Tests §  Simulationen

Agile Testquadranten

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Q2

Q1

Q3

Q4

Für d

as T

eam

Für das Produkt

fachlich

technisch

Entwicklertests §  Unit Tests §  Komponententests

automatisiert

automatisiert / manuell

Effekt §  Usability-Test der Anwendung §  Lebendige Test-Dokumentation

bzw. -spezifikation

manuell

§  Manuelle explorative Tests §  Benutzer-Akzeptanztests §  Usability Tests

Ziel §  Evaluierung des SW-Produkts

§  Formell: Sprint Review §  Informell: manuelles, z.B.

exploratives Testen

Page 16: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

16

Alle Tests

Funktionstests §  Beispiele §  Prototypen §  Story Tests §  Simulationen

Agile Testquadranten

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Q2

Q1

Q3

Q4

Für d

as T

eam

Für das Produkt

fachlich

technisch

Entwicklertests §  Unit Tests §  Komponententests

automatisiert

automatisiert / manuell

Ziel §  Flaschenhälse ermitteln §  Speicherlücken ermitteln §  Systemgrenzen ausloten

Effekt §  robuste Software §  gutes Antwortzeitverhalten

manuell

Werkzeuge

§  Performance-Tests §  Lasttests

§  Manuelle explorative Tests §  Benutzer-Akzeptanztests §  Usability Tests

Page 17: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

17

Alle Tests

Agile Testquadranten

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Q2

Q1

Q3

Q4

Für d

as T

eam

Für das Produkt

fachlich

technisch

automatisiert / manuell manuell

automatisiert Werkzeuge

Entwicklertests §  Unit Tests §  Komponententests

§  Performance-Tests §  Lasttests

Funktionstests §  Beispiele §  Prototypen §  Story Tests §  Simulationen

§  Manuelle explorative Tests §  Benutzer-Akzeptanztests §  Usability Tests

Page 18: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

18

Definition of done

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Tests als integraler Bestandteil des Softwareentwicklungsprozesses

§  Keine Anforderung ist „fertig“, bis das Testen abgeschlossen ist

§  dies betrifft im Zweifelsfalle alle Quadranten

§  d.h. automatisierte und manuelle Regressionstests

§  Akzeptanzkriterien der Endanwender werden in lauffähige Tests umformuliert

Page 19: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

19

Agenda

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

§  Ziel dieses Vortrags

§  Grundzüge des agilen Testens

§  Voraussetzungen für agiles Testen

§  Vorstellung der agilen Testquadranten

§  Die Testpyramide

§  Anwendungsbeispiele für die Umsetzung agiler Tests

§  Fazit, Fragen, Diskussion, Kontakt

Page 20: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

20

Die Testpyramide ?

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Nein, eher ein Abbild der Realität in vielen Projekten...

Page 21: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

21

Die Testpyramide

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Dauer Anzahl

Automatisierte Unit Tests

Automatisierte Integrations- und Komponenten - Tests

Automatisierte Systemtests

Funktionale Tests

Page 22: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

22

Die Testpyramide - Umsetzungshinweise

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Hinweise

§  Zielorientierter Einsatz von Werkzeugen

§  Anwender und Entwickler arbeiten gemeinsam

§  Lernorientierung hinsichtlich manueller Tests: Gelerntes zur Verbesserung heranziehen

Page 23: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

23

Agenda

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

§  Ziel dieses Vortrags

§  Grundzüge des agilen Testens

§  Voraussetzungen für agiles Testen

§  Vorstellung der agilen Testquadranten

§  Die Testpyramide

§  Anwendungsbeispiele für die Umsetzung agiler Tests

§  Fazit, Fragen, Diskussion, Kontakt

Page 24: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

24

Quadrant 1 / Ebene 1: JUnit

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Page 25: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

25

Quadrant 2 / Ebene 2: JUnit

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Page 26: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

26

Quadrant 2 / Ebene 2/3: FitNesse

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

DB

WP- DL

HSQL-DB

RFC

Page 27: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

27

Quadrant 2 / Ebene 2/3: FitNesse

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Page 28: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

28

Quadrant 2 / Ebene 3: Selenium

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Page 29: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

29

Quadrant 3 – manuelles Testen I

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Hauptziel agile Softwareentwicklung: Das Ausliefern und Bereitstellen neuer Funktionalitäten nach jedem Entwicklungssprint Anwenden des manuellen Testens um

§  nicht-triviale Fehler aufzufinden

§  Definierter Soll-Zustand vs. „Was wäre wenn?“

§  zu erforschen, wie eine Anforderung getestet werden kann

§  Tests auszuführen, deren Automatisierung zu aufwändig bzw. „teuer“ ist

§  „Sonderkonstellationen“ abzudecken

Page 30: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

30

Quadrant 3 – manuelles Testen II

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Exploratives Testen als leichtgewichtiger Ansatz für manuelle Tests

§  Paralleles Testdesign und -ausführung

§  Im Gegensatz zu „fixen“ Testvorgaben nach Plänen (die meist allerdings gewisse Interpretationsspielräume offen lassen)

§  Vorgehen nach einem strukturiertem Ansatz

§  Beinhaltet Protokolle, auch als Inspiration für künftige Testsitzungen

§  Letzter Test beeinflusst den nächsten Test

§  Kein Widerspruch zu klassischen Testplänen, sondern ergänzend

Page 31: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

31

Quadrant 3 – manuelles Testen III

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Analogie:

Software-Tester vergleichbar einem Tourist §  Man sieht nicht alles, bzw. nur bestimmte Teile der Software

§  Es gibt viele Wege, um das Ziel zu erkunden

§  Man möchte sicherstellen, dass man die wichtigsten Punkte gesehen hat

Zutaten:

§  Feste Zeitvorgabe (Timebox)

§  Dokumentation (Testprotokoll)

§  Umfang und Art der Test-Tour (Scope)

Vorgehen:

§  Spezifische Touren (FedEx, Supermodel...)

Page 32: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

32

Agenda

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

§  Ziel dieses Vortrags

§  Grundzüge des agilen Testens

§  Voraussetzungen für agiles Testen

§  Vorstellung der agilen Testquadranten

§  Die Testpyramide

§  Anwendungsbeispiele für die Umsetzung agiler Tests

§  Fazit, Fragen, Diskussion, Kontakt

Page 33: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

33

Fazit

Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

§  Testautomatisierung und agiles Testen erhöhen die Testabdeckung und damit mittelbar die Code-Qualität.

§  Eine hohe Testabdeckung ist elementare Voraussetzung für Refactorings

§  Kosten zur späten Fehlerbehebung sinken deutlich

§  Entwicklungsteams können eine hohe Entwicklungsgeschwindigkeit beibehalten

§  Agiles Testen unterstützt insofern Entwickler dabei, guten Code zu entwickeln.

§  Guter Code ist das Ziel eines jeden Entwicklers – und wirtschaftlich sinnvoll !

Page 34: ET2014 Agiles Testen - Entwicklertag · Agiles Testen Handwerkszeug zur Prävention von Fehlern und technischen Schulden Entwicklertag 2014 Lars Alvincz, Daniel Knapp

© 2014 andrena objects ag

34 Lars Alvincz, Daniel Knapp | Agiles Testen | Entwicklertag 2014, Karlsruhe

Lars Alvincz

[email protected]

07 21 - 61 05 - 122

______________________

Daniel Knapp

[email protected]

07 21 - 61 05 - 13 66

______________________

Weitere Fragen?

meet the SPEAKER@speakerlounge 1. OG DIREKT ÜBER DEM EMPFANG