【问题标题】:jasmine Expected spy myLinks to have been called error茉莉花 预期的间谍 myLinks 已被称为错误
【发布时间】:2013-10-28 08:19:04
【问题描述】:

我很难理解 jasmine spyOn 功能。 我写了一个简单的函数并测试我的方法是否被调用:

function myView() {
  myLinks();
}

这是我的测试:

describe('#myView', function() {
    it('updates link', function() {
      var spyEvent = spyOn(window, 'myLinks');
      expect(spyEvent).toHaveBeenCalled();
    });
  });

这将返回以下失败:

Expected spy myLinks to have been called

我在这里做错了什么?

【问题讨论】:

    标签: javascript jquery jasmine jasmine-jquery


    【解决方案1】:

    您需要调用myView() 函数,以便调用myLinks()

    function myLinks(){
        //some tasks
    }    
    
    function myView() {
      myLinks();
    }
    

    上面这两个函数在window对象中声明,然后你创建一个指向窗口的spy对象。

    describe('#myView', function() {
        myView();//Call the method so the myLinks was called too
        it('updates link', function() {
          var spyEvent = spyOn(window, 'myLinks');
          expect(spyEvent).toHaveBeenCalled();
        });
      });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-25
      • 2012-08-15
      相关资源
      最近更新 更多