在不使用Require的情况下,在Jasmine中模拟对象进行单元测试

时间:2016-09-20 04:05:55

标签: javascript jquery unit-testing jasmine karma-jasmine

我正在尝试为JavaScript文件编写规范(例如' functional.js')。 jQuery是唯一使用的外部库。我使用Karma作为我的测试运行员。

functional.js反过来指的是一个对象(比如说' FOO'),它在一个不同的文件中定义,在该文件中定义了几个方法。对象FOO(及其方法)用于其他几个文件中。我不想将foo.js(其中定义了FOO)添加到Karma中的文件列表,因为这反过来又使用了在别处定义的对象等等。我希望能够通过模拟FOO作为一个空对象来单独测试functional.js和其他人,并且能够在我的所有spec文件中共同使用它。我能做到吗?还有其他替代模式吗?

我的试验:我尝试创建一个帮助文件并定义了一个包装在IIFE中的空FOO对象,然后在加载源JavaScript文件之前将该文件添加到Karma,但它抛出了一个ReferenceError,说找不到变量FOO in functional.js:1

0 个答案:

没有答案