gut gelöst. - embedded testinggut gelöst. gut beraten. gut qualifiziert. gut aufgehoben. clean...
TRANSCRIPT
![Page 1: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/1.jpg)
1
![Page 2: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/2.jpg)
Gut gelöst.
Gut beraten.
Gut qualifiziert.
Gut aufgehoben.
Clean Testing
Wann ist ein Test ein guter Test?
Özgür Ergel
![Page 3: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/3.jpg)
n Informatik-Ingenieur (TU-Istanbul, 2000)
n Arbeitet als Software-Entwickler bei PROSOZ Herten GmbH
n Ausbildung in Systemischen Coaching (INeKO Institut Köln, 2018)
n Speaker / Trainer im agilen Umfeld
n Twitter: @OezguerErgel
n E-Mail: [email protected]
3
Über @OezguerErgel
Özgür Ergel
![Page 4: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/4.jpg)
4
Über PROSOZ Herten GmbH
Özgür Ergel
n Vorreiter in den Bereichen Soziale Sicherung und Bauen
n In 1.500 Verwaltungen in Deutschland kommt mindestens ein PROSOZ-Produkt zum Einsatz
n 30 Jahre praxisnahe IT-Lösungen für kommunale Verwaltungen
n 4 Standorte: Herten, Berlin, Dresden, München
n Über 300 Mitarbeiter und 34,8 Millionen Euro Umsatz in 2017
![Page 5: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/5.jpg)
5
Worum geht es in diesem Vortrag?
Özgür Ergel
n Gedanken- und Erfahrungsaustausch für
> Zusammenfassung von Prinzipien um qualitative hochwertigen automatisierten Entwicklertests zu schreiben
> Mehr Sensibilisierung und mehr Bewusstsein für besseren Test-Code
![Page 6: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/6.jpg)
6
Entstehungsgeschichte
Özgür Ergel
![Page 8: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/8.jpg)
8
Clean Test
![Page 9: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/9.jpg)
Code Katan https://github.com/Ergel/Clean-Testing
Özgür Ergel
9
![Page 10: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/10.jpg)
Grundlegende Fragen zum Testing?n Was
Özgür Ergel
10
![Page 11: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/11.jpg)
Grundlegende Fragen zum Testing?(Entwicklerperspektive)
n Was ist Software-Testing?n Warum bzw. wozu schreiben wir Tests?n Wann schreiben wir Tests?n Womit schreiben wir Tests?n Wo sind die Überschneidungen mit
Qualitätssicherungsexperten?n Sollen wir eher unseren Code testen oder Anforderungen?n Was ist mit Test-Reviews?n Was bedeutet Unit-Test, Komponententest, Integrationstest,
Abnahmetest, Akzeptanztest, Testpyramide etc.?n ???
11
![Page 12: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/12.jpg)
Was bedeutet Unit-Testing?n Isolierung?n Mocks vs. Stubs?n Integration?n Datenbankzugriff innerhalb Tests
n !!! Es ist wichtig, ein gemeinsames Verständnis im Team zu schaffen!!!
Özgür Ergel
12
![Page 13: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/13.jpg)
Eure Test-Pyramide
Özgür Ergel
13
![Page 14: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/14.jpg)
Und Agilität?
Özgür Ergel
14
![Page 15: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/15.jpg)
Beispiel aus der Praxis
Özgür Ergel
15
n Siehe User Story
![Page 16: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/16.jpg)
Clean Tests - Qualitätsmerkmalen Sie geben ein schnelles Feedback Jn Sie laufen zuverlässig !!!!n Sie sind einfach zu verstehen J
n Sie können x-mal wiederholt ausgeführt werdenn Sie sind unik (Keine Redundanz)n Sie haben einen Mehrwert (Sie erfüllen ihren Zweck)
n Sie fördern und fordern kontinuierliche Kommunikation zwischen Entwickler / QS- und Fachexperten J
Özgür Ergel
16
![Page 17: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/17.jpg)
Clean Tests - Qualitätsmerkmalen Sie müssen angepasst werden, wenn Verhalten
verändert wurde Jn Sie müssen nicht angepasst werden, wenn Code-
Struktur verändert wurden Sie können mit einem angemessenen Aufwand
angepasst werden
n Sie haben aussagekräftigen Testnamenn Sie sind einfach strukturiert (AAA)n Sie sind von der Kundenperspektive geschrieben
(Anwender oder Entwickler) Jn Sie unterstützen Business Driven Development J
Özgür Ergel
17
![Page 18: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/18.jpg)
Impulse Fragenn Wozu schreibst Du Tests?
n Für wen schreibst Du Tests? Nur für dich oder auch für andere?> Kannst Du mit den Augen des anderen sehen?> Kannst Du mit den Ohren des anderen hören?> Kannst Du mit dem Herzen des anderen fühlen?
Özgür Ergel
18
![Page 19: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/19.jpg)
Wozu schreibe ich Tests? J
Özgür Ergel
19
![Page 20: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/20.jpg)
Wozu schreibe ich Tests?
Özgür Ergel
20
n Absicherungn Verifizieren, dass ich das Richtige umgesetzt haben Verifizieren, dass ich es richtig umgesetzt haben Schneller rausfinden, wo der Fehler liegtn Verhaltensdokumentationn Regressionssicherheitn Basis für stetige Code- Vereinfachung bzw. Refactoringn Bessere Design / APIn Hilft beim Verstehen der fachlichen Anforderungen Jn Um meine QS‘ler im Team zu unterstützen
![Page 21: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/21.jpg)
Zusammenfassung
Özgür Ergel 21
![Page 22: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/22.jpg)
Zusammenfassung
Özgür Ergel 22
Here's the thing: At one point you should make sure to test that your software works correctly from a user's perspective, not just from a technical perspective. What you call these tests is really not that important. Having these tests, however, is. Pick a term, stick to it, and write those tests.
Martin Fowler
![Page 23: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/23.jpg)
Empfehlungenn https://www.se-radio.net/2010/09/episode-167-the-
history-of-junit-and-the-future-of-testing-with-kent-beck/
n https://martinfowler.com/bliki/UnitTest.htmln https://martinfowler.com/articles/mocksArentStubs.h
tmln Extreme Programming Explained (Kent Beck)n Test Driven Development By Example (Kent Beck)n https://www.bbv.ch/images/bbv/pdf/downloads/V2_
Clean_Code_V3.pdfn https://ccd-school.de/coding-dojo/function-
katas/fizzbuzz/n https://generic.de/?attachment_id=17900
Özgür Ergel
23
![Page 24: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/24.jpg)
Weitere Begrifflichkeiten / Technikenn Technical Debthn Micro Testingn Clean Testingn Testing Quadrantsn Story-test driven developmentn Test-driven Requirementsn Business-facing testsn Business Driven Developmentn Specification By Examplen Exploratives Testenn BDD
Özgür Ergel
24
![Page 25: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/25.jpg)
Weitere Begrifflichkeiten / Technikenn Regressiontestsn Mutation Testingn Black Box Testingn White Box Testingn Gray Box Testingn Entscheidungstabellenn Äquivalenzklassenn Grenzwertanalysen Agile Acceptance Testingn End to End Testsn Testpyramiden ATDDÖzgür Ergel
25
![Page 26: Gut gelöst. - Embedded TestingGut gelöst. Gut beraten. Gut qualifiziert. Gut aufgehoben. Clean Testing Wann ist ein Test ein guter Test? Özgür Ergel nInformatik-Ingenieur (TU-Istanbul,](https://reader033.vdocuments.site/reader033/viewer/2022050115/5f4c1bce19339b4ff10696a0/html5/thumbnails/26.jpg)
Vielen Dank für eure Aufmerksamkeit
26