Sie suchen Ihre bereits erworbenen Lerninhalte? Dann geht es hier entlang: Zum academy Campus
Dieser zweitägige Workshop zeigt am praktischen Beispiel einer iOS-App die unterschiedlichen Testarten einer guten Test-Suite (Unit-, Integration-, Snapshot-, UI- und Monkeytests). Dabei werden unterschiedlichste Aspekte wie das Laden von Daten aus einer Web-API und aus dem lokalen Speicher, Navigation, Bedienoberfläche und Darstellung sowie die sogenannte Businesslogik abgedeckt.
Dieser Workshop hat bereits stattgefunden. Eine Liste aller kommenden Workshops finden Sie hier.
Die inflationäre Verwendung des Attributes "agil" hat dazu geführt, dass sich kaum jemand mehr darunter irgendwas vorstellen kann. Mehr noch, viele Entwickler verdrehen die Augen, wenn sie das Wort hören. Dabei bedeutet agil einfach nur, dass notwendige Anpassungen an einem Projekt durchgeführt werden können, ohne Angst haben zu müssen, dabei essenzielle Funktionen zu zerstören.
Dadurch bleibt die Geschwindigkeit, mit der Änderungen an einem Projekt vorgenommen werden können, auf einem hohen Niveau. Ein agiles Projekt lässt sich mit geringem Aufwand an geänderte Anforderungen oder auch Umgebungsparameter anpassen. Das spart Zeit, Geld und Energie.
Wie aber wird Agilität erreicht? Ein wesentlicher Bestandteil eines agilen Projektes ist eine gute Test-Suite. Diese besteht aus automatischen Tests, die unterschiedliche Teilaspekte eines Produktes abdecken. Ziel einer solchen Test-Suite ist, dass Entwickler ein berechtigtes Vertrauen in die Aussagekraft der Testergebnisse investieren können. Dadurch können sie auch umfangreiche Neustrukturierungen des Quelltextes vornehmen, ohne im Anschluss Tage oder Wochen mit manuellen Tests zu verbringen.
Dieser zweitägige Workshop zeigt am praktischen Beispiel einer iOS-App die unterschiedlichen Testarten einer guten Test-Suite (Unit-, Integration-, Snapshot-, UI- und Monkeytests). Dabei werden unterschiedlichste Aspekte wie das Laden von Daten aus einer Web-API und aus dem lokalen Speicher, Navigation, Bedienoberfläche und Darstellung sowie die sogenannte Businesslogik abgedeckt. Neben den rein technischen Aspekten der verschiedenen Testarten sind auch Testpraktiken wie testgetriebene Entwicklung, Mocking, testgestützte Umstrukturierung (Refactoring) und die Testunterstützung in Xcode ein wesentlicher Bestandteil des Workshops.
Der Quelltext zum Workshop steht den Teilnehmern in einem GitHub-Repository zur Verfügung, in dem jeder Schritt als separater Commit vorliegt, sodass man dem Workshop problemlos folgen kann, ohne mitschreiben zu müssen.
Der Workshop richtet sich an iOS-App-Entwickler, die sich weniger mit komplizierten Fehlern und mehr mit Funktionen ihrer Apps beschäftigen möchten.
Der Umgang mit Xcode sollte ebenso bekannt sein wie Grundlagen der App-Entwicklung mit Swift.
Unit- und Integrationtests
UI- und Snapshottests
Tests in Xcode
Vor- und Nachteile
Red, Green, Refactor
Fakes: Mocking und Stubbing
Laden von Daten von einer REST-API
Speicher und Laden von Daten
Asynchrone Tests
Unit-, Snapshot- und UI-Tests der Bedienoberfläche
Vor- und Nachteile
Was sollte getestet werden?
Automatische Erstellung von App-Screenshots
Ergibt das Sinn?
Das Framework ViewInspector
The Composable Architecture
Klassische MVC-Navigation
Das Coordinator-Pattern
Dr. Dominik Hauser ist iOS-Entwickler und Autor. Seine Spezialthemen sind automatische Tests für iOS-App und Xcode. Er ist Autor zahlreicher Bestseller und Artikel über App-Programmierung im Allgemeinen und die testgetriebene Entwicklung und Xcode im Speziellen. Herr Hauser teilt sein Erfahrungen regelmäßig in Vorträgen auf Entwicklerkonferenzen und Workshops und ist aktiver Teil der iOS-Entwickler-Community.
Dieser Workshop hat bereits stattgefunden. Eine Liste aller kommenden Workshops finden Sie hier.
Füllen Sie ganz einfach und bequem das Kontaktformular aus und wir werden Ihnen Ihre Fragen schnellstmöglich beantworten.