javascript - Jasmine 测试来自另一个目录中文件的 javascript

标签 javascript unit-testing testing jasmine importerror

我正在尝试为位于项目目录其他位置的 javascript 文件编写单元测试套件。

由于某些其他依赖关系,我无法重新定位该文件或规范文件,我该如何导入它?

项目目录结构如下:

  • ./
  • ./js
  • ./js/模块
  • ./js/module/MYFUNC.js
  • ...
  • ./spec/MYFUNC_tests.js

MYFUNC.js 看起来像这样:

var constants = {a:100}
var myObj = function(){
    var local_var = true;

    myObj.doSomething = function(){
        return true;
    }
    myObj.answerToEverything = function(){
        return 42;
    }
}

这是我在 MYFUNC_tests.js 中的目标测试用例

describe("MYFUNC ", function(){
    var obj_a = myObj();
    it("Universe question ", function(){
        expect(obj_a.answerToEverything).toBe(42);
        done();
    }
});

任何有关正确导入指南的帮助或链接都将不胜感激!

最佳答案

试试这个技巧:

var myFile = require('myFile');
var myFunc = myFile.readFileSync('./js/module/MYFUNC.js','utf-8');
eval(myFunc);

你应该有 node.js

关于javascript - Jasmine 测试来自另一个目录中文件的 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47006766/

相关文章:

javascript - 使用 Package.json 在 $HOME/Sites 文件夹中创建一个文件夹

python - 类型错误 : 'module' object is not callable when running unittest

javascript - 如何对传递给 JavaScript 函数的匿名回调进行单元测试?

unit-testing - 如何编写写入标准输入的 Go 测试?

javascript - 是否可以将 beforeEach 和 afterEach Cypress Hook 组合成自定义命令?

javascript - 使用 jQuery 促进 "Load More"分页的最佳方法是什么?

javascript - 获取所有嵌套内容文件并按 Nuxt 内容中的目录对它们进行分组

rest - 使用 Nightwatch.js 实现 REST API 测试的最佳方式

ruby-on-rails - 嵌入式资源中的 RSpec Controller 测试错误

javascript - 刷新div(jquery+asp.net mvc)