在Angular应用中,我正在尝试创建一些integration tests。
请注意,这里我们正在导入AppModule,这意味着Angular将创建所有已注册的商品,并将编译所有已注册的组件。
原因:
beforeEach(async(() => {
TestBed.configureTestingModule({ imports: [ AppModule ]}).compileComponents();
}));
每项测试都将花费几秒钟的时间。这个缓慢的问题已经在GitHub上讨论了一段时间:
https://github.com/angular/angular/issues/13963
https://github.com/angular/angular/issues/12409
理想情况下,我只应该编译一次组件,但是如果我将TestBed.configureTestingModule
放在beforeAll
而不是beforeEach
内,则不幸的是,这行不通。
上面的GitHub链接中已经发布了一些解决方法,但是它们往往会从一种Angular版本转变为另一种版本。
我正在寻找一种稳定,优雅的解决方案,可以彻底解决此问题。