【发布时间】:2019-01-20 20:01:06
【问题描述】:
我尝试为close 方法编写单元测试用例,但是当我执行ng test 时出现以下错误
TypeError: Cannot read property 'close' of undefined
下面是我的测试代码
describe('CPComponent', () => {
let fixture: ComponentFixture<CPComponent>;
let component: CPComponent;
let de: DebugElement;
let el: HTMLElement;
beforeEach(() => {
TestBed.configureTestingModule({
schemas: [ CUSTOM_ELEMENTS_SCHEMA ],
declarations: [ CPComponent ],
imports: [CommonModule, CookieModule.forRoot()],
});
TestBed.compileComponents();
fixture = TestBed.createComponent(CPComponent);
});
it('should close the banner', () => {
component.close();
const comp = fixture.componentInstance;
fixture.detectChanges();
de = fixture.debugElement.query(By.css('.bwc-o-display-2'));
el = de.nativeElement;
expect(el.textContent).toBeUndefined();
});
我的关闭方法
close() {
this.cpBanner = false;
this.cookieService.put( 'CP_BANNER', 'true' );
}
请告诉我我在这里做错了什么。
【问题讨论】:
-
你在哪里定义变量
component? -
如果您在
component.close()收到错误,您的component可能没有正确初始化。先检查一下。 -
我已经添加了完整的代码,我在 vscode 中没有看到任何错误
标签: angular typescript jasmine karma-jasmine