在实习生中使用 ArcGIS JSAPI 作为备用加载程序时的测试套件路径

2023-12-19

我有一个使用 ArcGIS Javascript API 构建的应用程序,并且我一直在使用实习生添加测试。我在开发时在 Windows 7 的 IIS 下运行它。我没有遇到任何困难实习生辅导班 https://github.com/theintern/intern-tutorial开始时和查看后工作如何为实习生指定备用加载程序 https://stackoverflow.com/questions/17788908/how-to-specify-alternate-loader-for-intern我能够将 client.html 中的加载程序设置为<script src="http://js.arcgis.com/3.7/"></script>我能够运行测试,但只有在更改查询字符串和 intern.js 中的路径以包含 IIS 中定义的父路径之后。

例如,假设我的应用程序托管在http://localhost/testApp/mySite我在 mySite 位置定义了 js、css、tests 和 node_modules 文件夹。 要运行测试,我必须去http://localhost/testApps/mySite/node_modules/intern/client.html?config=mySite/tests/intern前置mySite到配置的位置。 同样,在我的配置中,我必须像这样定义我的套件:

suites: [
    'mySite/tests/suite1',
    'mySite/tests/suite2',
    'mySite/tests/suite3'
],

如果我不更改脚本标记以在 client.html 中使用不同的加载器并在 node_modules 中使用 dojo 的版本,那么我不需要额外的路径(但无法找到 esri 库)。

我也从此发现esri jsapi 版本的实习生教程 https://github.com/DavidSpriggs/intern-tutorial-esri-jsapi在该教程中,他不必更改加载程序。 不同之处在于,由于 dojo 1.8.3 中的错误,他正在使用 intern-geezer,但我使用的是 esri jsapi 3.7,因此有 dojo 1.9.1,而且我也不关心旧的 IE,所以宁愿不使用 geezer,如果我不需要。我确实像他一样在 intern.js 中指定了我的包。

我确实复制了我的应用程序并安装了 intern-geezer 而不是 intern,并且我能够运行测试。除了一个之外,所有都通过了(我怀疑这是因为 geezer 不支持 chai 中的某些内容),而且我根本不需要修改路径。 client.html 的 intern-geezer 版本与 intern 中的不同。它不使用要求。

有没有办法让实习生使用 esri jsapi 而无需更改 client.html 中的加载程序?我也希望以自动方式从命令行运行此操作。


从 Intern 1.3 开始,您可以在useLoader配置属性。对于 Esri 加载程序,您可以使用以下命令:

// intern.js
define({
    /* … other configuration options … */
    useLoader: { 'host-browser': 'http://js.arcgis.com/3.7/' }
    /* … */
});

请注意,Esri 使用旧的 Dojo 1 加载程序;如果您想指定额外的dojoConfig标准如async: true等,添加dojoConfig配置文件中的全局对象:

define([], function () {
    this.dojoConfig = { async: 1 };

    return {
        /* … configuration … */
    };
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在实习生中使用 ArcGIS JSAPI 作为备用加载程序时的测试套件路径 的相关文章

  • pubnub 和 head.js

    有没有人成功整合过pubnub http www pubnub com 和 head js 正确吗 Pubnub http www pubnub com 希望我将他们的脚本放在页面底部并带有 div 就在它前面的标签 这可以确保在最后调用
  • Jasmine-jQuery loadFixtures 未定义

    我对整个茉莉花的事情仍然很陌生 在过去的几个小时里我陷入了这个问题 我尝试使用 loadFixture 加载外部夹具文件 我使用 Jasmine 2 0 0 和 Jasmine jQuery 2 0 5 ReferenceError loa
  • 使用 javascript 更改 div 颜色

    div style height 20px width 100 background color 000000 div br
  • 仅单击 div 内部

    我正在为一个小网站制作教程 我只想让教程气泡可点击 因此 当我们尝试单击气泡之外的某些内容时 什么也不会发生 换句话说 我希望我的 html 不可点击 而 tutorial bubble 可点击 尝试这个 jQuery function h
  • 创建一个简单的 10 秒倒计时

    我想要一行这样写的 Your download will begin in 10 9 8 etc Beginning on page load seconds 我已经设置了 10 秒下载文本 并且我还查看了其他 stackoverflow
  • 如何防止 gulp-notify 破坏 Windows 中的 gulp-watch?

    我正在使用吞咽通知 https www npmjs org package gulp notify插入 这是我如何在 gulpfile js 中实现它的示例 您可以看到我也在使用 gutil 和 livereload 我不知道它们是否发挥任
  • FakeAsync/tick (Async/whenStable) 与 detectorChanges()

    您能帮我区分这两件事吗 根据我的理解 如果你只使用 observable 你可以使用 detectorChanges 因此 您可以直接更改组件属性或监视服务调用并返回可观察的值 然后调用 detectorChanges 更改将在 html
  • Chrome 扩展同步调用 - 仅在窗口关闭后创建窗口

    我有这个代码 function voteNewWindow mailNum chrome windows create url http www google com incognito true function window conso
  • 使用 DOJO 自动完成文本框

    我正在寻找一种使用 DOJO 进行文本框自动建议的简单方法 我将查询的数据库表 使用 PHP 脚本 以 JSON 形式返回 有超过 100 000 条记录 因此这确实不应该采用 FilteringSelect 或 ComboBox 的形式
  • 如何在 HTML / Javascript 页面中插入 PHP 下拉列表

    好吧 这是我的第二篇文章 请接受我是一个完全的新手 愿意学习 花了很多时间在各个网站上寻找答案 而且我几乎已经到达了我需要到达的地方 至少在这一点上 我有一个网页 其中有许多 javascript 函数 这些函数一起使用 google 地图
  • 使用文件 API 将资源加载到 Three.js 中

    我想创建导入 3D 模型以在浏览器中查看的功能 方法是使用File API http www html5rocks com en tutorials file dndfiles Three js 加载器在我托管的文件上运行良好 我的理解是加
  • 使用 JavaScript 生成 PDF 文件

    我正在尝试将 XML 数据从网页转换为 PDF 文件 并且希望能够完全在 JavaScript 中完成此操作 我需要能够绘制文本 图像和简单的形状 我希望能够完全在浏览器中完成此操作 我刚刚写了一个名为jsPDF https github
  • 有没有办法将变量从 javascript 导入到 sass 或反之亦然?

    我正在制作一个依赖于块概念的 CSS 网格系统 所以我有一个基本文件 例如 max columns 4 block width 220px block height 150px block margin 10px 它被 mixin 使用 m
  • 如何从 JSON 响应重定向?

    所以我尝试使用 Flask 和 Javascript 上传器 Dropzone 上传文件并在上传完成后重定向 文件上传正常 但在烧瓶中使用传统的重定向 return redirect http somesite com 不执行任何操作 页面
  • 如何调用 google 的 getBasicProfile() 来仅单击按钮即可登录 google?

    我在我的网站上使用谷歌登录
  • 如何检测元素内容何时发生变化

    我正在寻找一种方法来监视元素内动态填充 无页面重新加载 内容 以便我可以将类添加到另一个元素 到目前为止我有这个 HTML div class message container div class messages error span
  • 获取点击的的DOM路径

    HTML div class lol a class rightArrow href a div 伪代码 rightArrow click function rightArrowParents this dom dom is the pse
  • 禁用特定 div 上的 Tab 键

    我有以下结构 div div Some content div div Some content div div 我想 禁用 div2 上的 tab 键 我的意思是按下 tab 键时 div2 的元素不会获得焦点 有没有简单的方法可以使用
  • mozilla pdf.js 没有全视图

    我喜欢这个 pdf 查看器https github com mozilla pdf js https github com mozilla pdf js Demo http mozilla github com pdf js web vie
  • Node.js - 重载函数

    有没有一种方法可以重载node js中的函数 类似于 noSuchMethod https developer mozilla org en JavaScript Reference Global Objects Object noSuch

随机推荐