[英]How to test an internal function
我正在尝试创建一个单元测试来覆盖内部 function
文件A.js
module.exports.functionA = () {
const functionB = () {
// do something
}
functionB()
}
测试.js
const { functionA } = require('fileA')
...
it('runs functionB', () => {
functionA()
expect(...).toHaveBeenCalled()
}
我如何访问它?
这里有两种可能性(您的情况看起来像第一种,但出于问题的目的也很明显地简化了)。
任何一个:
functionB
完全是functionA
私有的,它是其实现的一部分,这意味着您无法访问它来(直接)对其进行测试。 相反,测试functionA
,它可能使用functionB
作为它所做工作的一部分(否则,在functionA
中完全私有的 function 没有意义)。
或者
functionA
以某种方式公开functionB
(例如,作为返回值,或作为返回的 object 上的方法,或通过在传入的 object 上设置它等),在这种情况下,您可以通过任何方式获取它functionA
提供然后测试它。
(同样,我认为你的情况是第一个。)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.