[英]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.