Requirejs 替代AMD装载机能否用于intern的功能测试?
功能测试模块中似乎没有使用用于指定另一个AMD加载程序的Requirejs 替代AMD装载机能否用于intern的功能测试?,requirejs,amd,intern,Requirejs,Amd,Intern,功能测试模块中似乎没有使用用于指定另一个AMD加载程序的useLoader配置 我想通过使用requireJS JSON插件()将JSON文件加载到javascript对象中,以便在我的功能测试套件中使用,但由于我假设该插件正在寻找特定于requireJS的结构,因此无法工作: TypeError: Cannot read property 'isBuild' of undefined at Object.load </home/dev/public_html/gold_widget
useLoader
配置
我想通过使用requireJS JSON插件()将JSON文件加载到javascript对象中,以便在我的功能测试套件中使用,但由于我假设该插件正在寻找特定于requireJS的结构,因此无法工作:
TypeError: Cannot read property 'isBuild' of undefined
at Object.load </home/dev/public_html/gold_widgets_15644/web/assets/js/json.js:27:24>
at injectPlugin <node_modules/intern/node_modules/dojo/dojo.js:608:12>
at <node_modules/intern/node_modules/dojo/dojo.js:543:7>
at Array.forEach <native>
at forEach <node_modules/intern/node_modules/dojo/dojo.js:220:19>
at execModule <node_modules/intern/node_modules/dojo/dojo.js:535:5>
at <node_modules/intern/node_modules/dojo/dojo.js:582:7>
at guardCheckComplete <node_modules/intern/node_modules/dojo/dojo.js:566:4>
at checkComplete <node_modules/intern/node_modules/dojo/dojo.js:574:27>
at onLoadCallback <node_modules/intern/node_modules/dojo/dojo.js:656:7>
TypeError:无法读取未定义的属性'isBuild'
在Object.load
至少
在
at Array.forEach
在弗雷赫
执行模块
在
在guardCheckComplete
核对完毕
在onload回调时
如果功能测试中不支持其他AMD模块加载程序(如requireJS),那么在功能测试模块中包含来自文件的json的最佳方式是什么
是否应该将节点的
fs
库与JSON.parse
结合使用?没错,功能测试使用默认加载程序运行。功能测试只是驱动浏览器——它不会在与被测应用程序相同的环境中运行
您可以在功能测试中同时使用AMD和CommonJS库。例如,您可以安装Dojo npm模块并将其添加到测试配置中的软件包列表中,以使用Dojo/text
(以及任何其他Dojo实用程序函数)。您还可以使用Intern附带的dojo/Node
模块加载节点的fs
模块,如:
define([ 'intern/dojo/node!fs', ... ], function (fs, ...) {
...
});