Reader small image

You're reading from  Test-Driven iOS Development with Swift - Fourth Edition

Product typeBook
Published inApr 2022
PublisherPackt
ISBN-139781803232485
Edition4th Edition
Right arrow
Author (1)
Dr. Dominik Hauser
Dr. Dominik Hauser
author image
Dr. Dominik Hauser

Dr. Dominik Hauser is an iOS developer working for a small company in western Germany. In over 11 years as an iOS developer, he has worked on many different apps, both large and small. In his spare time, Dominik builds small (often silly) apps and explores how he can become a better iOS developer. He talks at conferences, writes books, and is active in the iOS community in general. His most successful open source component (in terms of stars) is a pull-to-refresh control for a table view that consists of an actual SpriteKit game. Before Dominik became an iOS developer, he was a physicist, researching the most powerful photon sources within our galaxy.
Read more about Dr. Dominik Hauser

Right arrow

What this book covers

Chapter 1, Your First Unit Tests, sees the first unit tests at work. We write real tests for a fictional blogging app and explore the different kinds of assertions in XCTest, a testing framework from Apple.

Chapter 2, Understanding Test-Driven Development, looks at test-driven development and how it can help us developers to write maintainable code.

Chapter 3, Test-Driven Development in Xcode, brings the insights from the first two chapters together and looks at how test-driven development works in Xcode. You'll learn some tricks and configurations that make Xcode a valuable testing tool.

Chapter 4, The App We Are Going To Build, discusses the app we are going to build in the rest of the book. This chapter ends with setting up the project for the app in Xcode.

Chapter 5, Building a Structure for ToDo Items, shows how to build the model layer of our app. By working on it, you will learn how to write tests for Combine code.

Chapter 6, Testing, Loading, and Saving Data, addresses the fact that the data used in the app needs to be saved and loaded in the file system of the iOS device. In this chapter, we build the class that is responsible for this task.

Chapter 7, Building a Table View Controller for the To-Do Items, shows how to write tests for a table view with a diffable data source. You will learn how to test updates of table view cells and the selection of cells.

Chapter 8, Building a Simple Detail View, explores how to test user interface elements such as labels, buttons, and maps. We also take a look at how to test actions of the user that change the data in the model layer.

Chapter 9, Test-Driven Input View in SwiftUI, shows how to build and test a view created using SwiftUI. In order to be able to test SwiftUI code, we add a third-party testing library to the testing target.

Chapter 10, Testing Networking Code, looks at writing tests for the new async/await APIs of URLSession. This will allow you to write clean tests that simulate the network communication with a fast mock object.

Chapter 11, Easy Navigation with Coordinators, the final chapter, shows how to write tests for navigation between the view controllers of our app. This allows us, finally, to see our small app running on the simulator. We fix the last bugs using TDD and end up with a working app.

lock icon
The rest of the page is locked
Previous PageNext Page
You have been reading a chapter from
Test-Driven iOS Development with Swift - Fourth Edition
Published in: Apr 2022Publisher: PacktISBN-13: 9781803232485

Author (1)

author image
Dr. Dominik Hauser

Dr. Dominik Hauser is an iOS developer working for a small company in western Germany. In over 11 years as an iOS developer, he has worked on many different apps, both large and small. In his spare time, Dominik builds small (often silly) apps and explores how he can become a better iOS developer. He talks at conferences, writes books, and is active in the iOS community in general. His most successful open source component (in terms of stars) is a pull-to-refresh control for a table view that consists of an actual SpriteKit game. Before Dominik became an iOS developer, he was a physicist, researching the most powerful photon sources within our galaxy.
Read more about Dr. Dominik Hauser