What we have learned so far
In the course of this book, we have mainly written unit tests. As the name suggests, unit tests test small units in isolation. The advantage of using unit tests for TDD is the immediate feedback that is received in the TDD workflow. We wrote a test, ran it, and immediately got feedback about the status of our code.
We used mocks, stubs, and fakes to separate the units from the rest of the code. This allowed us to focus the tests on one micro feature at a time.
Using TDD, we build a model, View Controller, and the network layer of our app. Next, we put all the parts together to form a real iOS app. We have seen how to use UI tests to implement functional testing that focuses on individual features rather than units.
Finally, we also used Xcode Server and fastlane to automate the whole development and deployment process.
But, as you might have guessed, there is more. This book is, at best, only the beginning of your journey to becoming a testing expert. The next few...