Test Driven Development in iOS Using Swift

Covers: Unit Tests, UI Tests, Mocking, Code Coverage and End to End Testing

4.69 (570 reviews)
Udemy
platform
English
language
Mobile Apps
category
instructor
Test Driven Development in iOS Using Swift
3,613
students
5 hours
content
Dec 2023
last update
$79.99
regular price

What you will learn

Learn the benefits and the reasoning behind writing tests

Implementing unit tests for the core domain model

Writing tests for the user interface

Understanding mocking and benefits of mocking

Implementing domain driven design

Why take this course?

As a software developer you must always aspire to write quality code. You must also make sure that any future code you write does not break existing features. Test Driven Development provides you with a great way to implement software. It provides a safety net, which allows you to make changes with confidence. In this course, you will learn how to apply the principles of test driven development in iOS using Swift language.


Let’s check out the contents of the course:


  1. Understanding Test Driven Development

In this section you will learn about the concepts behind Test Driven Development. You will learn why testing is important, when to write unit tests and even misconceptions behind testing in software development.


  1. Types of Testing

In this section you will learn about types of testing. You will learn the differences between unit testing, user interface testing, integration testing, acceptance testing and performance testing.


  1. Writing Your First Unit Test

In this section you will learn how to write your first unit test. We will implement a simple Tip Calculator and write your code using the principles of test driven development. You will learn how using test driven development allows you to architect your app.


  1. Writing UI Tests

In this section you will learn how to write user interface tests. You will learn how to automate your user interface and perform actions on the elements on the screen. You will also learn how to use the PageObject pattern to reuse elements from the screen.


  1. Mocking

In this section you will learn the concept of mocking. You will learn how to create a mocked version of the login service, which will allow the user to continue with their tests without having a dependency on a real login service and network connection.


  1. End to End Testing

In this section you will learn how to perform end to end integration testing. You will learn how to invoke a real network service and make sure that all components of the app are working correctly together.


  1. Project Time - Quiz App

Finally, you are going to put all your skills to test by implementing a Quiz App in SwiftUI using the principles of test driven development. You will start by testing the core domain and then move on to write user interface tests.


Who is this course for?

  • Developers interested in learning about writing great software based on the principles of test driven development.

  • Developers interested in learning about the application domain using unit tests.

  • Developers who want to educate themselves on how to architect an application using test driven development.

  • Developers who want to take their skills to the next level


I had so much fun in creating this course and I really hope you enjoy it too.

Thanks and let’s start coding!

Screenshots

Test Driven Development in iOS Using Swift - Screenshot_01Test Driven Development in iOS Using Swift - Screenshot_02Test Driven Development in iOS Using Swift - Screenshot_03Test Driven Development in iOS Using Swift - Screenshot_04

Reviews

Eric
August 29, 2023
Azam is to the point and I love it. His choice of subject is also great. I needed a quick learning of unit testing and TDD and this course saved my butt.
Marc
August 28, 2023
It's a good intro course on TDD. There were some issues with the code in the lectures, but that lent itself with troubleshooting and fixing things, which is par for the course (pun intended).
Gagan
August 21, 2023
if we are referring testing code in main code, we are increasing the code base, there must be something
Nicola
April 28, 2023
Great course to get a general overview of TDD, with simple practical examples. Would be nice to have some UITests using UIKit and more complex examples. This course is a nice entry point to introduce you at TDD.
Milic
April 7, 2023
The code from the videos is not up to date. Also there could be more UnitTesting done in the course and less UI testing.
Lal
March 30, 2023
Good one to start with Unit testing / UI tests. Section 6: Mocking needs rework. The approach suggested by the tutor is not that great, since it requires us to add multiple targets to the model classes. You could have mock "URLProtocol" instead of the domain level protocol. Create a mocker class that conforms to `URLProtocol` and then inject that to URLSessionConfiguration.
Vitaliy
January 28, 2023
the theory of course is really interesting, but a lot of examples(code) have mistakes, and UI tests do not work.
Wahid
November 2, 2022
This is the best tutorial I found for iOS Unit Tests and UI Tests. I learned a lot from this course which helped me to prepare for interview.
Gang
October 14, 2022
It's extremely good. The rhythm is perfect for me. The most important thing is, I'm a Chinese, I can hear your english clearly. Thank you for your awesome lesson
Rodrigo
September 28, 2022
TDD is a whole topic for itself. There is lot to do before saying that you know TDD. However this course really helps to start with. PROS - Really good introduction to TDD. You will learn base concepts. CONS - Too much UI test, should equilibrate a between both UI and Unit. Also there is a lack of explanation about the tool itself. Good to start with!
Ivan
May 28, 2022
This course is more about UI Tests on swift UI Unit tests is having too But it is Good course I will recommend it)
Vamsi
May 25, 2022
As usual, it is very useful and taught many things. Expecting to get more complex app with full fledged testing from Azam.
Yasuhiro
May 13, 2022
This course will be good for people who have not written a test for a native app nor the frontend of an application and therefore want to learn what it's like to write tests. But this course will probably be not so good for other types of people. It's basically a live coding all the way without going into the topics deeply.
Intan
April 12, 2022
Amazing. I recommend this course for people who want to start to learn Test Driven Development in iOS.
Jesús
April 4, 2022
An excellent course to start in the field of unit tests, a great instructor and very interesting explanations

Charts

Price

Test Driven Development in iOS Using Swift - Price chart

Rating

Test Driven Development in iOS Using Swift - Ratings chart

Enrollment distribution

Test Driven Development in iOS Using Swift - Distribution chart
4237890
udemy ID
8/12/2021
course created date
11/16/2021
course indexed date
Bot
course submited by