Testgetriebene Entwicklung von iOS-Apps mit Swift

In der iOS-Entwicklung werden zu wenig Tests geschrieben. Meist wird das Argument angebracht, dass dafür keine Zeit ist und der Kunde das eh nicht bezahlt. Studien haben aber mehrfach gezeigt, dass die testgetriebene Entwicklung nicht länger dauert und dazu noch viele weitere Vorteile bietet. Aber, wie so oft, aller Anfang ist schwer.
In dieser Session werden die Teilnehmer schrittweise an die Testgetriebene Entwicklung von iOS Apps mit Swift herangeführt. Das erworbene Wissen kann direkt am nächsten Arbeitstag eingesetzt werden.
Zusätzlich erhalten die Teilnehmer das aktuelle Buch des Dozenten über testgetriebene Entwicklung kostenlos.

Vorkenntnisse

* Entwicklung von einfachen iOS-Apps mit Swift
* Bedienung von Xcode

Lernziele

* Vor- und Nachteile von Unit-Tests
* Testgetriebenen Entwicklung von iOS Apps mit Swift
* Wie sieht testbarer Quelltext aus?
* Testrelevante Xcode-Einstellungen
* Erstellung von robusten Tests
* Testunterstütztes Refaktorieren

Agenda

ab 10.00 Registrierung und Begrüßungskaffee
11.00: Beginn
11.00 - 12.30:
  • Grundlagen zur Testgetriebenen Entwicklung
  • Vor- und Nachteile
  • Erste Tests im Playground
  • Einstellungen in Xcode
  • Erstellung der Beispiel-App
12.30 - 13.30: Mittagspause
13.30 - 15.00:
  • Anatomie von Tests
  • Assertions
  • Testen von typischen Elementen einer App (Views, ViewController, TableViews)
  • Mocks und Stubs
  • Dependency Injection
15.00 - 15.15: Kaffeepause
15.15 - 16.30:
  • Asynchrone Tests
  • Expectations
  • Wir bauen eine Klasse zum Mocken von Network-Aufrufen
  • Swizzling
16.30 - 16.45: Kaffeepause
16.45 - 18.00:
  • UI-Tests
  • Testgetriebenes Refaktorieren
ca. 18 Uhr: Ende

 

Technische Anforderungen

Es können keine Geräte zur Verfügung gestellt werden. Daher bringen Sie Ihr Gerät bitte selbst mit. Die Teilnehmer benötigen ein MacBook Air oder ein MacBook Pro (mit aktueller Version von macOS) mit installiertem Xcode (aktuellste Version). Xcode kann bequem aus dem App Store geladen werden und sollte vor dem Workshop schonmal gestartet worden sein, damit auch die zusätzlichen Komponenten installiert sind. Diese installiert Xcode automatisch beim ersten Start. (Zur Not geht auch ein MacBook.)

Falls Sie ein Gerät Ihrer Firma verwenden, überprüfen Sie vorher bitte, ob eines der folgenden, gelegentlich vorkommenden Probleme bei Ihnen auftreten könnte.
  • Workshop-Teilnehmer hat keine Administrator-Rechte.
  • Corporate Laptops mit übermäßig penibler Sicherheitssoftware
  • Gesetzte Corporate-Proxies, über die man in der Firma kommunizieren muss, die aber in einer anderen Umgebung entsprechend nicht erreicht werden.

Speaker

 

Dominik Hauser
Dominik Hauser ist professioneller iOS-Entwickler seit 2011 und Autor mehrerer Bücher (unter anderem zum Thema Test-Driven iOS Development mit Swift). Er ist aktiv auf Stack Overflow und teilt seine Erkenntnisse regelmäßig auf GitHub und/oder auf seinem Blog.

heise-MacDev-Newsletter

Sie möchten über die heise MacDev
auf dem Laufenden gehalten werden?

 

Anmelden