This section won't cover everything with unit testing, and there are really interesting sub-topics with testing that you should get familiar with at your own leisure. For some great unit-testing resources, refer to What's New in Testing (WWDC 2017) (https://developer.apple.com/videos/play/wwdc2017/409/) and Testing with Xcode (https://developer.apple.com/library/content/documentation/DeveloperTools/Conceptual/testing_with_xcode/chapters/03-testing_basics.html).
Unit testing can be defined as a function that tests an aspect of your app. A good testing strategy takes into account testing any new components that are created or changed, from the core functionality boundary testing, to testing bug fixes. Testing also needs to be repeatable and self-validating, or, in other words, you should be able to assert the same results each time you run the test, and the tests should be a clear pass or fail. Furthermore, good tests also need to be independent...