在 Angular 应用开发中,单元测试是确保代码质量的重要环节。特别是当我们使用依赖注入时,测试变得更加复杂。最近,我在处理一个 Angular 项目时,遇到了一些问题:如何正确地在单元测试中 Mock 一个服务类,尤其是在使用了 Standalone 组件的情况下。下面我将详细介绍如何解决这个问题。
背景介绍
假设我们有一个名为 TestDialogComponent
的组件,它使用了 Ionic 的 ModalController
来管理模态对话框。我们希望在测试这个组件时,Mock 掉 ModalController
,以便于控制其行为并检查组件是否正确使用了该服务。
初次尝试
最初的测试代码如下:
describe('TestDialogComponent', ()