Jasmine因未捕获的参考错误而失败

时间:2013-08-05 21:05:15

标签: javascript jasmine

我正在尝试让项目与Jasmine一起正常运行。我正在使用从here下载的项目。我添加了另一个spec文件PatientSpec.js:

describe('Patient :: Create', function() {
  it("Must note be null", function() {
    require(['models/Patient'], function(Patient) {
      var patient1 = new Patient();
      expect(patient).toBeDefined();
    });
  });
});

您看到我的var名为patient1,我正在对变量名patient运行期望。当我查看我的index.html时,我的所有测试都在通过,这显然没有定义。我拉起我的控制台,这是我的错误:

enter image description here

什么会导致此错误?为什么它会无声地失败?

1 个答案:

答案 0 :(得分:1)

它无声地失败导致错误发生在您的require电话的回调中,而不在您的测试中。因此,当> 之后错误被抛出时,您的测试就完成了。你必须在回调中运行你的测试:

require(['models/Patient'], function(Patient) {
  describe('Patient :: Create', function() {
    it("Must note be null", function() {
      var patient1 = new Patient();
      expect(patient).toBeDefined();
    });
  });
});

看看这个SO了解如何测试requireJs模块