首页 > 解决方案 > 如何测试角度事件监听器?

问题描述

我有以下代码,comp:

ngOninit() {
  window.addEventListner('oreantationChange' () =>  {
    this.sideNavbar();
  });
}

在这里,我想介绍上面的代码,以下是我的更改,规范:

it ('-----',() => {
  spyOn(window,'addEventListner');
  window.addEventListner('oreantationChange' () =>  {
     expect(component.sideNavbar).toHaveBeenCalled()
  });
}

但是上面的测试没有被覆盖。

任何人都可以请建议我帮助。谢谢。

标签: angulartypescriptjasmineangular7angular-unit-test

解决方案


除了更改oreantationChange为之外orientationChange,重写测试如下。

it ('-----', () => {
    spyOn(component, 'sideNavbar');
    window.dispatchEvent(new Event('orientationChange'));

    expect(component.sideNavbar).toHaveBeenCalled();
});

推荐阅读