使用 TestBed 进行测试:状态栏错误没有提供程序



我已经阅读了有关使用 TestBed 测试 Ionic2 项目的文章,当我尝试在我的环境中重复文章中的示例时,我遇到了麻烦。当我尝试在步骤3上开始测试时,出现错误"状态栏没有提供程序"。

可能这是一个愚蠢的问题,但有人能假设为什么会发生这种情况吗?

状态栏包含(导入(在我的 app.component.ts 文件中。

import { StatusBar } from '@ionic-native/status-bar';

使用 TestBed 时,您正在创建一个仅用于测试的全新@NgModule。因此,您必须配置该测试模块以导入其所有依赖项 - 包括状态栏。

因此,与在主应用程序中导入状态栏的方式相同(直接或通过导入其包含 NgModule 的方式(,您必须对测试模块执行相同的操作。

TestBed.configureTestingModule({
  ......,
  providers: [
    StatusBar
  ]
})

 TestBed.configureTestingModule({
   imports: [
      ModuleContainingStatusBar
   ]     
})

(抱歉,不熟悉 Ionic 本身,所以不知道如何导入状态栏使用(

尝试将其添加到@NgModuleproviders数组中

相关内容

  • 没有找到相关文章

最新更新