You may have noticed that every time we used the Angular CLI to scaffold a new Angular application or generate an Angular artifact, it would create some test files for us.
Test files in the Angular CLI contain the word
spec in their filename. The filename of a test is the same as the Angular artifact that is testing, followed by the suffix
.spec.ts. For example, the test file for the main component of an Angular application,
app.component.ts, would be
app.component.spec.ts and reside in the same path as the component file.
We should think about an Angular artifact and its corresponding test as one thing. When we change the logic of the artifact, we may need to modify the unit test as well. Placing unit test files with their Angular artifacts makes it easier for us to remember and edit them. It also helps us when we need to do some refactoring to our code, such as moving artifacts (not forgetting to move the unit test...