如何使用Jasmine对Angle 2中的警报进行单元测试?

时间:2018-08-30 11:13:15

标签: angular unit-testing karma-jasmine

我试图通过在角度2中使用Jasmine来编写一个用于警告的测试用例,但是无论我的测试用例如何产生错误,即使我不确定我是否编写了正确的方法,也是如此。如果有什么想法请帮帮我。

这是我的测试用例:

it('checking showscheduledrequest flow an alert is called',() =>{
      let component = fixture.componentInstance;
      component['ou'] = 'd';
      component['sen'] = 'ddsd';
      var oldalert = alert;
      oldalert = jasmine.createSpy();
      component.handleActionChane('showscheduledrequest');
      fixture.autoDetectChanges();
      expect(alert).toHaveBeenCalledWith('This is not a valid request');
    });

1 个答案:

答案 0 :(得分:2)

您可以尝试在窗口上进行监视,然后检查是否已使用异常值调用警报,例如:

    it("should call alert", () => {
     spyOn(window, "alert");
     //your code
     expect(window.alert).toHaveBeenCalledWith("expected message");
  });