Testing seems to be a highly neglected topic when it comes to mobile development. While most other software development professions are not relying on pure manual testing, there are a lot of mobile development teams that have not made unit testing a regular practice. And yes: It takes time, effort and some thinking ahead to write meaningful tests. But there is no doubt, it is worth it.
Luckily the general consensus seems to be that everyone wants to write tests (which makes my job a lot easier). In my experience teams mostly decide against a robust testing
strategy as “they have no time”, “QA will make sure everything works” or “manual testing is enough”. All of those are valid concerns but will most likely backfire
in large scale applications. Writing tests of course is not a silver bullet against bugs and malfunctions but takes a very important role in the successful development
and implementation of software applications.
This series is meant to cover mostly everything regarding testing in swift (especially iOS development). From the basic tools that apple provides us, advanced techniques,
over test environments to metrics and performance.
Overview
As I have not completely sketched everything out the list of covered topic is likely to change but should keep more or less the initial tone.
- The basics
Everything around the basic tooling apple provides
- Advanced testing mechanics
Things like testing asynchronous processes, SwiftUI, Snapshot testing, structuring code to make it testable
- UI Testing
Testing using
XCUIApplications
- Testing environment
What Xcode has to offer to integrate testing into projects
- Testing metrics
Code coverage and performance
- CI/CD
- Advanced Topics
Flaky tests and how to avoid them, mocking, robot testing
I really hope this series is going to help someone.
See you next time 💙