小编fil*_*oxo的帖子

Angular2 RC5如何正确配置测试模块

我正在更新Angular2 RC5的单元测试.该更新日志指出以下重大更改:

addProviders[已弃用],请TestBed.configureTestingModule改用

但是,只有在尝试在测试中包含服务时,这似乎才会出错.我的单元测试用于执行以下操作:

beforeEach(() => addProviders([
    MyService,
    MockBackend,
    ... 
]));
Run Code Online (Sandbox Code Playgroud)

它现在应该配置测试模块:

TestBed.configureTestingModule({
    providers: [
        StoryService,
        MockBackend,
        ...
    ]
});
Run Code Online (Sandbox Code Playgroud)

但那现在抛出一个错误

服务:MyService遇到声明异常FAILED

错误:已经实例化测试模块时无法配置测试模块.确保您inject以前没有使用过TestBed.configureTestingModule.

我检查inject过之前没有被调用过configureTestingModule.这不会影响任何其他组件/指令测试,它们似乎传递得很好.如何使用RC5对服务进行单元测试来解决此错误?我意识到我可能要等到RC5的测试文档更新,但是对于可能的解决方案的任何见解都将非常感激.

unit-testing angular

8
推荐指数
3
解决办法
7460
查看次数

标签 统计

angular ×1

unit-testing ×1