Unit testing | Swift
I am happy that you are reading my article and you are following me (if not, then click on “follow”) to read my articles immediately once I share them! :)
In this article, I am going to explain unit testing for iOS Developers. You definitely need to know about it, does not matter either you are working on your project or at some company.
Before we start, I have a quick question to you; Did you read my previous articles? If not, then I strongly advise you to check them as well:
- Important things that every iOS Developer should know + Book advise
- What is Reactive Programming | RxSwift + Bonus Books
- Async/await in Swift | What is it?!
- What is SwiftLint? — The trip to the Clean Code
- Grand Central Dispatch & DispatchQueue in Swift
- What is SOLID?! — Bonus DRY principle
- (Possible) Interview questions and answers for every junior iOS Developers
- 13 Git commands that you will need in your career — Cheat Sheet
- What is Lifecycle of ViewController? — iOS Development with Swift
- How to become a developer? || Why you should NOT become?
- Reference and Value types in Swift — What are they?
If you are ready, let’s start. 🥳
What is Unit Test?
Unit tests are structures used to test the code we write for our applications, allowing us to understand how our code will react in all potential situations. The word Unit, which means unit, indicates that these tests aim to cover small code blocks that can be tested instead of covering the entire project.
Where to use?
Unit Tests, whose usage areas can be diversified infinitely, can be used in all stages of the programme development process. If we give an example for better understanding;
- Functions
- Classes
- Relationships between connected structures and each other
to establish control mechanisms over it.
Pros of Unit Tests
- Independence
Each test written is independent of each other and does not depend on each other to work. - Ease of Validation
Unit Tests only return simple answers such as “Fail” instead of giving detailed information such as a log file in cases where errors are encountered. This makes it easier to quickly understand and intervene in the faulty part. - Speed
They work very fast, we can get output quickly when using Unit Tests.
Repeatability
Unit Tests always apply the same scenario to the code blocks on which it creates a control mechanism. This allows developers to test their blocks with the same situations.
The benefits of Unit Tests are quite nice, but in order to achieve these benefits, the tests must be written correctly. - Coding time
Here I am not planning to create a coding example, instead I strongly recommend to read Ray’s article about this topic: https://www.raywenderlich.com/21020457-ios-unit-testing-and-ui-testing-tutorial
Basically that is all from my side. If you like my articles, if you think that they are useful, you can click on “Follow” button and share articles to reach more people. :)