有许多文档显示了如何将匹配器添加到Jasmine规范中(例如here)。
有没有人找到一种将匹配器添加到整个环境的方法?我想创建一组有用的匹配器,以供任何和所有测试调用,而在我的所有规格中都没有copypasta。
目前正在对源进行反向工程,但是如果存在的话,会更喜欢一种可靠的方法。
最佳答案
当然,您只需要调用beforeEach()
而无需任何规格范围,然后在其中添加匹配器即可。
这将在全局添加一个toBeOfType
匹配器。
beforeEach(function() {
var matchers = {
toBeOfType: function(typeString) {
return typeof this.actual == typeString;
}
};
this.addMatchers(matchers);
});
describe('Thing', function() {
// matchers available here.
});
我已经创建了一个名为
spec_helper.js
的文件,里面充满了诸如自定义匹配器之类的东西,在运行其余的规范套件之前,我只需要将其加载到页面上即可。关于jasmine - 有没有办法将 Jasmine 匹配器添加到整个环境,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11942085/