首页 > 解决方案 > 将 jest.mock 用于 Angular 管道、指令和组件

问题描述

我开始使用 Jest 对 Angular 组件进行单元测试。我正在尝试通过以下方式开始单元测试来自动模拟 Angular Translate 管道:

import { TranslatePipe, TranslateService } from '@ngx-translate/core';

jest.mock('@ngx-translate/core');

期望现在能够使用以下方式将此模拟管道注入到组件中:

 ...
TestBed.configureTestingModule({
      declarations: [..., TranslatePipe],
      ...
     });

然而,测试崩溃的原因是:

Unexpected value 'TranslatePipe' declared by the module 'DynamicTestModule'. Please add a @Pipe/@Directive/@Component annotation.

我错过了 jest.mock() 的要点吗?它是否用于我想做的事情以外的事情?是否可以开玩笑应用@Pipe 装饰器?

标签: angularunit-testingjestjs

解决方案


推荐阅读