TDD Resources for iOS
Join the DZone community and get the full member experience.Join For Free
Below are a few resources I've found useful when doing TDD in iOS.
- Test-Driven iOS Development - the only TDD book specific to iOS. It goes over implementing a fully functional iOS app using TDD, from the data layer all the way to the UI.
- Working Effectively with Legacy Code - although not specifically geared toward iOS, this book is the authority on how to work with untested code (legacy code) and how to safely make changes to it, all by applying TDD.
- OCUnit (SenTestingKit) / XCTest - testing unit frameworks built directly into Xcode
- OCMock - Objective-C implementation of mock objects. Provides features such as class mocks, stubs, protocol mocks, expect/verify and many more
- OCHamcrest, OCMockito, Kiwi, GHUnit, Cedar - other unit testing tools that you might find useful
- CoverStory / lcov - code coverage of your unit tests.
- Screencasts from NSScreencast - TDD-related screencasts
- Intro to TDD for iOS part 1 and part 2 - taking a Tic-Tac-Toe game through the TDD process
- OCMock and UIAutomation tutorials - writings about mocking objects and the UI Automation tool
- iOS Unit Testing - dedicated website for iOS Unit Testing
- Unit Testing iOS Applications - online course on unit testing iOS applications, covering OCUnit, GHUnit, OCMock, and how to test view controllers, notifications, singleton, and gesture recognizers
- Testing View Controllers - technical article from objc.io around testing table views, table view controllers, data sources, and nib files
- Testing Concurrent Applications - technical article from objc.io around testing asynchronous code
- Testing asynchronous code: AGAsynchTestHelper, SenTestingKitAsynch
Published at DZone with permission of Mihai Fonoage, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.