最近,我轉向使用依賴注入來幫助理解分離代碼的簡單途徑,并有助測試。然而,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:*
主站蜘蛛池模板:
平陆县|
临湘市|
定兴县|
五河县|
石棉县|
中方县|
淅川县|
姚安县|
十堰市|
马龙县|
砚山县|
大同县|
锡林郭勒盟|
巴林左旗|
沾化县|
卫辉市|
荥经县|
灵丘县|
于田县|
灵丘县|
蒙阴县|
宁蒗|
伊金霍洛旗|
桃江县|
郴州市|
任丘市|
中卫市|
高安市|
厦门市|
阿克|
苏尼特右旗|
余江县|
濮阳市|
西乌珠穆沁旗|
江津市|
郧西县|
那曲县|
泊头市|
陆河县|
女性|
唐海县|