Angularjs 如何在角度测试中创建模拟区域

Angularjs 如何在角度测试中创建模拟区域,angularjs,angular,Angularjs,Angular,我有一个将NgZone作为提供者的组件。在创建测试床时,如何为NgZone创建一个提供者 我试过了,但测试超时了 const mockNgZone = jasmine.createSpyObj('mockNgZone', ['run', 'runOutsideAngular']) mockNgZone.run.and.callFake(fn => fn()) 当我使用此mockNgZone时,测试超时,出现错误: Disconnected (1 times), because no me

我有一个将NgZone作为提供者的组件。在创建测试床时,如何为NgZone创建一个提供者

我试过了,但测试超时了

const mockNgZone = jasmine.createSpyObj('mockNgZone', ['run', 'runOutsideAngular'])
mockNgZone.run.and.callFake(fn => fn())
当我使用此mockNgZone时,测试超时,出现错误:

Disconnected (1 times), because no message in 10000 ms.
Electron 1.7.9 (Node 7.9.0) ERROR
   Disconnected, because no message in 10000 ms.

NgZone
run
runOutsideAngular
方法从执行的函数返回值。因此,请从
callFake
函数返回一些值

示例:-

mockNgZone.run.and.callFake(function () {return something;});

NgZone
run
runOutsideAngular
方法从执行的函数返回值。因此,请从
callFake
函数返回一些值

示例:-

mockNgZone.run.and.callFake(function () {return something;});

mockNgZone.run.and.CallFake(函数(){return something;});。已执行函数的run和runOutsideAngular返回值。@Quest,您的答案有效。你能写下你的评论作为回答吗?我将把它标记为正确,并在这里写同样的答案:mockNgZone.run.and.CallFake(函数(){return something;});。已执行函数的run和runOutsideAngular返回值。@Quest,您的答案有效。你能写下你的评论作为回答吗?我会将其标记为正确,并在此处写出相同的答案: