我正在为我的角度应用完成测试台。但是在业力茉莉花测试中存在一个问题,它会引发错误
[object ErrorEvent]抛出
我将node_modules更新为我在以下链接中找到的解决方案 How do I debug a "[object ErrorEvent] thrown" error in my Karma/Jasmine tests?
但现在错误随机出现,有时候测试床没有任何故障,有时会出现错误触发。有任何建议可以永久避免它吗?
PS - 如果您需要更多资源,请在评论中告诉我。谢谢!
SomeComponent.spec.ts
import { RouterTestingModule } from '@angular/router/testing';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { NgModule } from '@angular/core';
import { HttpClient, HttpClientModule } from '@angular/common/http';
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
import { SomeComponent } from './some.component';
import { HttpLoaderFactory } from '../app.module';
import { AppRoutingModule } from '../app-routing.module';
import { SomeService } from './../services/some.service';
describe('SomeComponent', () => {
let component: SomeComponent;
let fixture: ComponentFixture<SomeComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
imports: [
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: HttpLoaderFactory,
deps: [HttpClient]
}
}),
HttpClientModule,
AppRoutingModule,
FormsModule,
ReactiveFormsModule ,
RouterTestingModule,
NgbModule.forRoot(),
FormsModule,
ReactiveFormsModule,
],
declarations: [
SomeComponent
],
providers: [
SomeService
]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(SomeComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});
答案 0 :(得分:0)
我也遇到了同样的问题,afterAll()方法解决了我的问题。 my solution is here
afterAll(() => {
TestBed.resetTestingModule();
});