Angular单元测试中,toHaveBeenCalled()方法不起作用。
创始人
2024-10-23 22:30:42
0

在使用该方法之前,需要先确保已经引入了Jasmine的spy功能。然后可以使用Jasmine的spyOn()方法来创建一个假的函数,以保证toHaveBeenCalled()方法正常工作。

以下是一个示例代码:

import { TestBed } from '@angular/core/testing';

describe('MyComponent', () => {
  let myComponent;
  let myService;

  beforeEach(() => {
    TestBed.configureTestingModule({
      providers: [
        MyService
      ]
    });

    myService = TestBed.get(MyService);

    spyOn(myService, 'myMethod');

    myComponent = new MyComponent(myService);
  });

  it('should call myMethod when button is clicked', () => {
    myComponent.onClick();

    expect(myService.myMethod).toHaveBeenCalled();
  });
});

在这个示例中,我们首先引入了TestBed,以便进行单元测试。然后我们创建了一个假的myService,使用Jasmine的spyOn()方法来监视myMethod方法。最后,我们创建了一个MyComponent实例,并在测试用例中调用onClick()方法。使用Jasmine的toHaveBeenCalled()方法来断言myService的myMethod方法已经被调用。

通过这种方式,我们就可以保证Angular单元测试中的toHaveBeenCalled()方法正常工作了。

相关内容

热门资讯

推荐一款!wepoker-h5... 1、推荐一款!wepoker-h5下载,如何下载德普之星辅助软件,解说技巧(有挂透视)(UU pok...
透视有挂!hhpoker免费透... 透视有挂!hhpoker免费透视脚本(透视)确实真的有挂(详细辅助我来教教你)1、hhpoker免费...
今日头条!wepoker软件安... 今日头条!wepoker软件安装包,epoker免费透视脚本,揭秘攻略(有挂教程);最新版2024是...
透视游戏!hh poker辅助... 透视游戏!hh poker辅助有用吗(透视)总是是真的有挂(详细辅助细节揭秘);1)辅助挂:进一步探...
总算明白!wepoker免费脚... 总算明白!wepoker免费脚本咨询,云扑克有透视吗,新2025版(有挂技巧);wepoker免费脚...
透视最新!aapoker脚本怎... 透视最新!aapoker脚本怎么用(透视)原来存在有挂(详细辅助可靠教程)一、aapoker脚本怎么...
研究成果!wepoker辅助器... 研究成果!wepoker辅助器官方,sohoo辅助,2025版教程(有挂方法)这是由厦门游乐互动科技...
透视肯定!wepoker透视底... 透视肯定!wepoker透视底牌(透视)确实真的有挂(详细辅助揭秘教程);1、打开软件启动之后找到中...
分辨真假!wepoker免费脚... 分辨真假!wepoker免费脚本咨询,云扑克有透视吗,教你攻略(有挂教程)1、很好的工具软件,可以解...
透视智能ai!佛手大菠萝13道... 透视智能ai!佛手大菠萝13道挂哪里(透视)果然存在有挂(详细辅助可靠教程)1、完成的残局,帮助玩家...