javascript - 使用 Jasmine 测试 instanceof

标签 javascript unit-testing testing jasmine

我是 Jasmine 的新手和一般测试的新手。我的代码块检查我的库是否已使用 new 运算符实例化:

 //if 'this' isn't an instance of mylib...
 if (!(this instanceof mylib)) {
     //return a new instance
     return new mylib();   
 }

我如何使用 Jasmine 对此进行测试?

最佳答案

Jasmine >=3.5.0

Jasmine 提供了 toBeInstanceOf匹配器。

it("matches any value", () => {
  expect(3).toBeInstanceOf(Number);
});

Jasmine >2.3.0

检查某物是否是instanceof [Object] Jasmine 提供了jasmine.any :

it("matches any value", function() {
  expect({}).toEqual(jasmine.any(Object));
  expect(12).toEqual(jasmine.any(Number));
});

关于javascript - 使用 Jasmine 测试 instanceof,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24332917/

相关文章:

c# - 依赖于 Mocked 属性的属性

c# - 英孚。在没有 DbContext 的情况下调用实体验证

testing - 如果我的项目需求不断变化,我应该使用测试用例吗?

angularjs - Protractor :测试视野焦点

database - 何时模拟数据库访问

javascript - 使用 lodash 检查对象中是否存在键

java - 任何覆盖工具都允许忽略 getters 、 setter 、 equals 和 hashcode 吗?

javascript - 如何在删除换行符的同时将 HTML 文本转换为 Javascript 变量?

javascript - 如何轻松检查字符串中空格的数量?

javascript - 整个滚动后的 jQuery 回调函数