gpt4 book ai didi

javascript - 如何在nodejs中对 'private'实用程序函数进行单元测试

转载 作者:IT老高 更新时间:2023-10-28 22:59:31 25 4
gpt4 key购买 nike

我目前正在为 nodejs 应用程序编写一些测试。假设我有一个这样的模块:

module.exports = function myModule(moduleParam) {
var someVar;
....
....
function helper(param) {
return param + someVar;
}
return {
doSomething: function (bar) {
....
....
var foo = helper(bar);
....
....
}
};
};

假设“helper”函数只在模块内部有用,不应该暴露在外部。

测试它的“最佳实践”是什么? (当然,我可以将 doSomething 函数作为一个整体进行测试,但这样,“helper”函数会在特定情况下以“黑盒”方式进行测试)。

我正在使用 nodeunit 作为测试框架,用于该仪表,但我可以根据需要更改它。

最佳答案

你不测试它。单元测试是黑盒测试。这意味着您唯一测试的是公共(public)接口(interface),也就是合约。

诸如此类的私有(private)函数只能通过重构公共(public)函数来实现。

因此,如果您因此使用 TDD,您的私有(private)函数将被隐式测试。

如果这感觉不对,通常是因为您的结构有误。然后你应该考虑将你的私有(private)内容移到一个额外的模块中。

关于javascript - 如何在nodejs中对 'private'实用程序函数进行单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15322354/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com