首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在nodejs中对“private”实用函数进行单元测试

如何在nodejs中对“private”实用函数进行单元测试
EN

Stack Overflow用户
提问于 2013-03-10 20:44:20
回答 1查看 6.2K关注 0票数 17

我目前正在为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作为测试框架,但我可以根据需要进行更改。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-11 01:50:34

你不会去测试它。单元测试是黑盒测试。这意味着你唯一要测试的就是公共接口,也就是契约。

这样的私有函数只有在重构公共函数时才会发生。

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

如果这感觉错了,最常见的原因是你的结构错了。然后,您应该考虑将您的私有内容移动到一个额外的模块。

票数 23
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15322354

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档