Angular单元测试使用模仿的Observable未返回值。
创始人
2024-10-23 22:01:30
0

在进行Angular单元测试时,有时需要使用模仿的Observable对象来模拟异步操作。但是,在测试中,会发现模仿的Observable未返回值,导致测试失败。这时,可以采用以下方法来解决问题。

首先,创建一个模仿的Observable对象,如下所示:

const mockObservable = of('test');

接着,在需要测试的组件中使用该Observable对象,如下所示:

this.service.getData().subscribe((data) => { this.data = data; });

其中,getData()方法返回的是Observable对象。

最后,在进行测试时,使用以下方法来模仿Observable返回值:

spyOn(service, 'getData').and.returnValue(mockObservable);

其中,使用spyOn()方法来模仿service中的getData()方法,并使用and.returnValue()方法返回mockObservable对象。

完整的测试代码如下所示:

it('should get data from service using mocked observable', () => { spyOn(service, 'getData').and.returnValue(mockObservable);

component.ngOnInit();

expect(component.data).toEqual('test'); });

通过以上方法,可以成功解决在Angular单元测试中使用模仿的Observable未返回值的问题。

相关内容

热门资讯

了解透视!hhpoker怎么破... 了解透视!hhpoker怎么破解,微信微乐辅助器使用教程,指引教程(有挂教学)-哔哩哔哩1、hhpo...
揭幕透视!德普辅助软件,微乐江... 揭幕透视!德普辅助软件,微乐江西小程序辅助器,经验教程(有挂教学)-哔哩哔哩1、首先打开德普辅助软件...
开挂透视!约局吧透视挂下载,小... 开挂透视!约局吧透视挂下载,小程序微乐游戏辅助,积累教程(新版有挂)-哔哩哔哩1、玩家可以在约局吧透...
揭幕透视!aapoker怎么设... 揭幕透视!aapoker怎么设置抽水,微乐游戏辅助脚本安装,模块教程(有挂解惑)-哔哩哔哩1)aap...
了解透视!wepoker私人定... 了解透视!wepoker私人定制透视,微乐云南小程序辅助器,总结教程(的确有挂)-哔哩哔哩wepok...
教你透视!xpoker辅助助手... 教你透视!xpoker辅助助手,微乐小程序外辅助工具,模板教程(确实有挂)-哔哩哔哩xpoker辅助...
详情透视!hhpoker外挂靠... 详情透视!hhpoker外挂靠谱吗,微乐贵阳足鸡麻将开挂,妙计教程(有挂细节)-哔哩哔哩1、金币登录...
普及透视!hhpoker有没有... 普及透视!hhpoker有没有作弊辅助,微信微乐辅助器下载,方针教程(详细教程)-哔哩哔哩1、hhp...
揭幕透视!哈糖大菠萝挂,微乐小... 揭幕透视!哈糖大菠萝挂,微乐小程序自建房辅助下载,诀窍教程(有挂透视)-哔哩哔哩1、金币登录送、破产...
详细透视!pokerworld... 详细透视!pokerworld修改器,微乐家乡麻将辅助,法门教程(有挂秘籍)-哔哩哔哩1、poker...