Javascript 如何为一个函数在另一个函数中编写测试用例?
我有一个js文件(index.js),如下所示Javascript 如何为一个函数在另一个函数中编写测试用例?,javascript,ecmascript-6,jestjs,mean,Javascript,Ecmascript 6,Jestjs,Mean,我有一个js文件(index.js),如下所示 function index() { sum(a,b) { return a+b; }; test() { --- --- } }; 在我的test.js文件中(使用jest) 这是投掷错误 TypeError:index.sum不是一个函数一个好的做法是:拆分函数,不要嵌套函数,这样它就可以访问和重用 如果您试图创建类或导出特定函数,则- 你可以在这里阅读js中的类- 您可以在
function index() {
sum(a,b) {
return a+b;
};
test() {
---
---
}
};
在我的test.js文件中(使用jest)
这是投掷错误
TypeError:index.sum不是一个函数一个好的做法是:拆分函数,不要嵌套函数,这样它就可以访问和重用 如果您试图创建类或导出特定函数,则- 你可以在这里阅读js中的类- 您可以在此处阅读有关按要求导出的内容- 如果
sum()
在index()
中定义了sum()
,则可能会解决您的问题(只要sum暴露在外部范围内),它是index()
实现的一部分,而不是单独的可测试单元。您应该测试索引的结果是否正确。如果sum
应该是一个单独的、可测试的,则它应该在index()
之外可用——可以在index
之外定义,也可以从index
返回。
const index = require('./index');
console.log(index)
test('adds 1 + 2 to equal 3', () => {
expect(index.sum(1, 2)).toBe(3);
});
module.exports.sum = sum;