Automated testing
As developers, we integrate code from various sources into our solutions. This can be from coffee-fueled, long, and tiring code sessions, a copy-pasted StackOverflow answer, a snippet from a blog post, an npm package, or a major library like Angular. We are expected to deliver quality results within the confines of an estimate we threw out there. In these conditions, bugs inevitably end up in our code. When deadlines, ambition, or ill-fated architectural decisions intersect with the regular cadence of coding, things only get worse.
Automated tests ensure that the code we write is correct and it stays correct. We rely on CI/CD pipelines for repeatable processes that are not prone to human error, but the pipeline is only as good as the quality of the automated tests we write.
Angular has two main categories of tests, unit and e2e tests. Unit tests are meant to be fast and easy to create and execute, and e2e tests are slower and more expensive. However, there...