最近,我轉向使用依賴注入來幫助理解分離代碼的簡單途徑,并有助測試。然而,Node.js中的模塊依賴Node提供的系統API,這很難判斷私有依賴被恰當的使用。一般的依賴注入很難在這種情況下使用,但現在不要放棄希望。
requireCauses 問題
Node.js很容易依照需求導入依賴。它運行的很好,并且比AMD模式加載器例如RequireJS要簡單。當我們模擬那些依賴的時候問題就來了。如果Node.js中模型的加載是受控的,我們怎么做才能控制讓偽對象在測試期間被使用到?我們可以使用Node的vm模式,通過vm我們可以再新的上下文中加載模型。運行在新的上下文中,我們可以控制需求反射出模型的方法。
解決方案
謝謝這篇文章, 現在可以給你提供一個相當不錯的解決方案. 代碼在下面:
var vm = require('vm');var fs = require('fs');var path = require('path'); /*** Helper for unit testing:*
主站蜘蛛池模板:
安新县|
太白县|
乡城县|
林口县|
芷江|
龙江县|
福清市|
兖州市|
扶绥县|
綦江县|
尤溪县|
女性|
莲花县|
塔城市|
南华县|
临汾市|
丰都县|
易门县|
大化|
玛多县|
红桥区|
大连市|
维西|
读书|
舟曲县|
璧山县|
滨海县|
沁源县|
永寿县|
邵东县|
昌黎县|
南江县|
宜兴市|
兴义市|
东丽区|
五家渠市|
都安|
县级市|
蒙山县|
九龙县|
息烽县|