【问题标题】:Is this JavaScript unit testable using Jasmine?这个 JavaScript 单元是否可以使用 Jasmine 进行测试?
【发布时间】:2015-05-25 04:51:46
【问题描述】:

这个 javascript 代码单元是否可以使用 Jasmine 进行测试。如果不是,我们如何使其可单元测试?

问题基本上是在测试规范 js 文件中无法访问 helloworld 函数,因为它不在全局范围内。我们如何重构代码以便在测试规范文件中可以访问它?

(function($){
    function helloWorld() {
          return "Hello world!";
        }
})(jQuery);

【问题讨论】:

    标签: jquery unit-testing jasmine


    【解决方案1】:

    不,您不能测试不可见的功能。

    您应该通过定义一些全局常量有条件地将其导出到您的测试环境中:

    (function ($) {
      var exports = window.TESTING ? window : {}
    
      exports.helloWorld = function () {
        // ...
      };
    
    })(jQuery);
    

    【讨论】:

      猜你喜欢
      • 2023-01-13
      • 1970-01-01
      • 1970-01-01
      • 2013-03-12
      • 2023-03-27
      • 2016-08-14
      • 2015-09-01
      • 2014-08-15
      • 1970-01-01
      相关资源
      最近更新 更多