Modularizing Legacy Projects Using TDD: Test-Driven Development with XCTest for iOS
內容描述
Chapter 1: Introduction Why write tests?Levels of testingOverview of TDD Chapter 2: Your First Test Basics of testing in iOSXCTestCode Examples Chapter 3: The Testing Pyramid Testing Level Values Distributing tests along levels Chapter 4: TDD Deep Dive Core conceptsComplex examplesImplement projects from scratch with TDD Chapter 5: Modularization for the Win Introducing a legacy projectTransform with maintainabilityBreak up larger componentsApply TDD for modularization Chapter 5: Dependency Injection and Mocks Write tests for a componentDownsides of these techniquesDeciding when to apply Chapter 6: Avoiding Threading Nightmares Threading issues Simulate situationsDetermine which components need to have multithreading tests Chapter 7: Testing Your Network Layer Testing network code cDifferences between sync and async codeTest network code Chapter 8: Taming CoreData Core Data Testing Core Data layer Chapter 9: Adding Features to Legacy AppsTesting concepts and techniquesAdd a feature to an existing applicationTDD and modularization Modify a tested and modularized project Chapter 10: Handling Production Issues Improve the application quality Make sure that similar problems don't happen againTools used to identify and keep track of bugs and crashes.Add tests for every production issue discovered Chapter 11: Performance Testing Write performance testsMetricKitValue of performance testingWrite performance tests for iOS applications