微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Javascript Sandbox单元测试

我正在使用QUnit,这非常棒.

我把我的JS应用程序包含在(function(){})()中;沙箱.这隐藏了许多我不想公开的代码,但我还需要测试该代码.

以下是一个如何工作的示例:

(function () {  

    var PublicAPI = window.PublicAPI = {};        
    PublicAPI.publicFunction = function (foo) {
        PrivateAPI.privateFunction(foo);
        return 'bar';
    };

    var PrivateAPI = {};
    PrivateAPI.privateFunction: function (foo) {
       // Make secret stuff that never gets returned to the public
       // Could be an AJAX call.
    }

})();

所以在这里我可以轻松地对PublicAPI.publicFunction进行单元测试,但是我如何测试PrivateAPI.privateFunction?

最佳答案
This similar question总结得很好……最简单的是不处理私有方法,因为如果他们想要他们可以改变…公共方法是需要测试的方法.如果你想测试你的内部函数,你需要留下某种钩子以便qunit能够找到.

原文地址:https://www.jb51.cc/js/429345.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐