Modularizing Legacy Projects Using TDD Test-Driven Development with XCTest for iOS için kapak resmi
Modularizing Legacy Projects Using TDD Test-Driven Development with XCTest for iOS
Başlık:
Modularizing Legacy Projects Using TDD Test-Driven Development with XCTest for iOS
ISBN:
9781484274286
Personal Author:
Edition:
1st ed. 2021.
Yayın Bilgileri:
Berkeley, CA : Apress : Imprint: Apress, 2021.
Fiziksel Tanımlama:
XVII, 335 p. 144 illus. online resource.
Contents:
Chapter 1: TDD Basics -- Chapter 2: Unit Tests.-Chapter 3: UITests -- Chapter 4: Testing Pyramid -- Chapter 5: TDD Deep Dive -- Chapter 6: Modularization for the Win -- Chapter 7: Dependency Injection and Mocks -- Chapter 8: Avoiding Multithreading Nightmares -- Chapter 9: Testing your Network -- Chapter 10: Taming Core Data -- Chapter 11: Adding Feature to Legacy App -- Chapter 11: Handling Production Issues.
Abstract:
Improve current or new projects with top notch testability and maintainability. Writing tests improves the design of your apps, as it pushes you to have a more modularized design. This in turn improves the maintainability and sustainability of your apps. This book is for iOS developers who already know the basics of iOS and Swift development but want to learn all the testing pro features in iOS. You'll start by reviewing the TDD Cycle and how to implement these concepts on a legacy project or a new one. You'll then walk through TDD step-by-step on a blank project, including setting up test targets, assertions, and expectations. You'll follow that with all levels of testing such as unit tests, integration tests, and end-to-end tests, and also tackle fairly complex, yet badly written legacy code. The book will take you through the journey of modularizing a legacy app using TDD. Throughout this journey, you will be introduced to multiple testing concepts and techniques, like writing tests for network and core data layers. You will write tests to ensure the thread safety of your app. And you'll add a new feature while you are in the middle of refactoring, which is an important skill so you can keep adding features while you are fixing your technical debt. By the end of this book, you will have all the tools needed to become a testing master. You will: Use mocking and dependency injection to make components more testable Write tests for asynchronous code like network code Add new features to existing legacy apps using TDD.
Added Author:
Dil:
English