TestBed

From Get docs
< @angular/core‎ | testingAngular/docs/8/api/core/testing/testbed


TestBed

interface

Configures and initializes environment for unit testing and provides methods for creating components and services in unit tests.

See more...

interface TestBed {
  platform: PlatformRef
  ngModule: Type<any> | Type<any>[]
  initTestEnvironment(ngModule: Type<any> | Type<any>[], platform: PlatformRef, aotSummaries?: () => any[]): void
  resetTestEnvironment(): void
  resetTestingModule(): void
  configureCompiler(config: { providers?: any[]; useJit?: boolean; }): void
  configureTestingModule(moduleDef: TestModuleMetadata): void
  compileComponents(): Promise<any>
  get<T>(token: Type<T> | InjectionToken<T>, notFoundValue?: T, flags?: InjectFlags): any
  execute(tokens: any[], fn: Function, context?: any): any
  overrideModule(ngModule: Type<any>, override: MetadataOverride<NgModule>): void
  overrideComponent(component: Type<any>, override: MetadataOverride<Component>): void
  overrideDirective(directive: Type<any>, override: MetadataOverride<Directive>): void
  overridePipe(pipe: Type<any>, override: MetadataOverride<Pipe>): void
  overrideProvider(token: any, provider: { useFactory: Function; deps: any[]; }): void
  overrideTemplateUsingTestingModule(component: Type<any>, template: string): void
  createComponent<T>(component: Type<T>): ComponentFixture<T>
}

Description

TestBed is the primary api for writing unit tests for Angular applications and libraries.

Note: Use TestBed in tests. It will be set to either TestBedViewEngine or TestBedRender3 according to the compiler used.

Properties

Property Description
platform: PlatformRef
Type<any>[]

Methods

Initialize the environment for testing with a compiler factory, a PlatformRef, and an angular module. These are common to every test in the suite.

initTestEnvironment(ngModule: Type<any> | Type<any>[], platform: PlatformRef, aotSummaries?: () => any[]): void

Parameters
ngModule Type[]
platform PlatformRef
aotSummaries () => any[] Optional. Default is undefined.
Returns

void


This may only be called once, to set up the common providers for the current test suite on the current platform. If you absolutely need to change the providers, first use resetTestEnvironment.

Test modules and platforms for individual platforms are available from '@angular//testing'.

Reset the providers for the test injector.

resetTestEnvironment(): void

Parameters

There are no parameters.

Returns

void


resetTestingModule(): void

Parameters

There are no parameters.

Returns

void


configureCompiler(config: { providers?: any[]; useJit?: boolean; }): void

Parameters
config object
Returns

void


configureTestingModule(moduleDef: TestModuleMetadata): void

Parameters
moduleDef TestModuleMetadata
Returns

void


compileComponents(): Promise<any>

Parameters

There are no parameters.

Returns

Promise<any>


deprecated from v8.0.0 use Type or InjectionToken This does not use the deprecated jsdoc tag on purpose because it renders all overloads as deprecated in TSLint due to https://github.com/palantir/tslint/issues/4522.


get(token: any, notFoundValue?: any): any

Parameters
token any
notFoundValue any Optional. Default is undefined.
Returns

any


execute(tokens: any[], fn: Function, context?: any): any

Parameters
tokens any[]
fn Function
context any Optional. Default is undefined.
Returns

any


overrideModule(ngModule: Type<any>, override: MetadataOverride<NgModule>): void

Parameters
ngModule Type
override MetadataOverride
Returns

void


overrideComponent(component: Type<any>, override: MetadataOverride<Component>): void

Parameters
component Type
override MetadataOverride
Returns

void


overrideDirective(directive: Type<any>, override: MetadataOverride<Directive>): void

Parameters
directive Type
override MetadataOverride
Returns

void


overridePipe(pipe: Type<any>, override: MetadataOverride<Pipe>): void

Parameters
pipe Type
override MetadataOverride
Returns

void


Overwrites all providers for the given token with the given provider definition.

overrideProvider(token: any, provider: { useValue: any; }): void

Parameters
token any
provider { useValue: any; }
Returns

void


overrideProvider(token: any, provider: { useFactory?: Function; useValue?: any; deps?: any[]; }): void

Parameters
token any
provider object
Returns

void


overrideTemplateUsingTestingModule(component: Type<any>, template: string): void

Parameters
component Type
template string
Returns

void


createComponent<T>(component: Type<T>): ComponentFixture<T>

Parameters
component Type
Returns

ComponentFixture<T>



© 2010–2020 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://v8.angular.io/api/core/testing/TestBed