有没有一种方法可以定义多个测试的提供者,声明,导入

时间:2019-06-21 21:37:20

标签: jasmine angular6 karma-jasmine

我正开始为我们的项目编写单元测试,由于某种原因,我们之前没有任何单元测试。我目前正在尝试使默认测试通过,并且我必须定义一些导入,声明和提供程序。现在我们有44个组件/服务,在我从事的3个单元测试中,它们使用相同的导入,声明和提供程序。

我只是想知道是否有一种方法可以定义所有测试的导入,声明和提供程序。

SET "MOSTRECENT=unknown"

FOR /F "delims=" %%d IN ('DIR /B /A:D /O:D "P:\%COMPUTERNAME%*"') DO (
    SET "MOSTRECENT=%%~fd"
)

ECHO The most recent backup is "%MOSTRECENT%"

IF EXIST "MOSTRECENT" (COPY ...

1 个答案:

答案 0 :(得分:0)

您可以创建具有以下一组常见依赖项的测试模块:

@NgModule({
  // ...whatever you need
  providers: [
    { provide: Dependency, useClass: DependencyMock },
  ]
})
export class CommonTestingModule {
}

然后在测试中

beforeEach(() => {
  TestBed.configureTestingModule({
    imports: [
      CommonTestingModule,
      ...
    ],
  ...
  })
  ...
});

您可以为应用程序的某些部分创建更多模块,这些模块可以在一些地方使用,类似于HttpClientTestingModule所提供的模块