Use Unit Tests to Gain New Power over iOS Code.

Trying to be agile without the technical agile practices leads to frustration. Learn how to build maintainable iOS test code and production code. Then you can “respond to change,” because your code won’t fight you.

Subscribe to our newsletter on Quality Coding techniques for iOS developers. You’ll receive free code snippets that will help you write unit tests more quickly.

Quality Coding is about technical agile practices for iOS developers. While the practices are language-agnostic, three of them can be elusive until you see them come alive with the iOS frameworks you use:

Unit Testing

A robust suite of unit tests acts as a safety harness, giving you courage to make bold changes. But there’s an art to making tests that give you useful information, while keeping the tests themselves readable & maintainable.


Writing unit tests after production code is hard. And such tests may only confirm your biases. Test-driven development (TDD) shapes production code in response to tests, in an evolutionary process. It’s about working with continuous feedback.


Widely misunderstood by developers, “refactoring” isn’t rewriting. Disciplined refactoring is changing the design of your code in small, verified steps. In this way, design can be discovered. Listen to the code, it’ll guide you.

iOS Unit Testing: The Definitive Guide

My book iOS Unit Testing by Example: XCTest Tips and Techniques Using Swift is the definitive guide to unit testing iOS apps. It covers foundational tools and skills, testing specific behaviors of iOS apps, and how to use the fast feedback from your tests.

Discover the Quality Coding Blog

Stay up to date with the latest tips for building quality into iOS code.

About Jon Reid.

Jon Reid is the author of iOS Unit Testing by Example and is a leading expert in unit testing and test-driven development (TDD) for iOS. He has been practicing TDD on Apple platforms for 21 years. His consultancy Quality Coding offers training for iOS teams in technical agile practices including unit testing, TDD, and refactoring. Learn more about Jon here.

They Say

Diego Freniche

Mobile Developer

I have to blame Jon. As I read through code, I start thinking about how can I test something, instead of simply adding another “quick fix.” It's paying off, as more and more of the team catch their first bug using tests, or sleep better at night. Even customers are asking for tests now!

Ron Lichty

VP Engineering

I saw Jon speak at Code Camp. Between the content and the presentation style, I realized I'd discovered my second TDD thought leader — that the content was perfect for engineering leaders.

Customers served! 100 + Subscribers

Boost Your Skills. Join Today.

It's time for you to acquire unit testing superpowers. Download our free test-oriented code snippets to get started today: