使用Jasmine-node来unit testingNode.js

当使用jasmine-node(或任何其他的JavaScript node.jstesting框架来考虑它)unit testingnode.js应用程序是必要的使用模式:

//file-under-test.js exports.some_func_of_many = function () {...}; //jasmine_node-spec.js var functions_to_test = require("file-under-test"); ..... some jasmine tests here 

即,我需要/想要testing的一切都需要通过模块对象暴露? 在我看来,我可能不想出口我的模块中的所有代码…或者我错过了一些其他模式或重要的东西?

是的,您将需要直接导出您想要testing的所有内容。 一个普通的模式是用一个下划线前面加上“private”方法,给你的模块的消费者提供他们应该使用的东西的提示,同时还将其暴露出来用于testing目的。

也就是说,有一个思想stream派认为你只应该出口(testing)你的公共消费方法,让这些testing“掩盖”你的内部方法。