我正在测试实习生4,我有一些来自CDN的资源,我想测试这些资源。在我的intern.json中,我有以下内容。
{
"loader": {
"script": "dojo2",
"options": {
"packages": [
{ "name": "dist", "location": "dist" },
{
"name": "esri",
"location": "https://js.arcgis.com/4.5/esri"
}
]
}
},
"environments": [
{
"browserName": "chrome",
"chromeOptions": { "args": [ "headless", "disable-gpu" ] },
"fixSessionCapabilities": false
}
],
"suites": "dist/tests/unit/app/main.js",
"maxConcurrency": 2
}但是,当我运行我的测试时,我会从@dojo/loader/loader.ts中得到下面的堆栈跟踪错误。
(ノಠ益ಠ)ノ彡┻━┻
Error: Failed to load module esri/core/promiseUtils from https://js.arcgis.com/4.5/esri/core/promiseUtils.js (parent: dist/tests/unit/app/main.js)文件存在于CDN上,只是加载程序似乎无法加载它。这是实习生4的限制吗?我以为在无头Chrome会话中运行它会对此有效,但它似乎不适用。
谢谢!
发布于 2017-09-27 01:30:46
默认情况下,“套件”列表中的套件在Node和浏览器环境中运行,而且@dojo/loader不支持在Node中的URL上加载模块。若要仅在浏览器中运行套件,请将它们添加到“浏览器”环境对象中,例如:
{
"loader": {
...
},
...
"browser": {
"suites": "dist/tests/unit/app/main.js"
},
"maxConcurrency": 2
}https://stackoverflow.com/questions/46431866
复制相似问题