【问题标题】:Ember.cli acceptance tests Could not find moduleEmber.cli 验收测试找不到模块
【发布时间】:2015-07-26 18:11:42
【问题描述】:

我一直试图弄清楚为什么我的集成测试几天都没有工作。这是 travis 日志:

https://travis-ci.org/allistera/mileager.io-front

错误是:

找不到从car-mileager-frontend/initializers/add-modals-container导入的模块ember-modal-dialog/initializers/add-modals-container

我能找到的对 add-modals-container 的唯一引用是在第三方包 ember-cli-materialise 中。

我还使用 ember-mock 来模拟我的 API。

对于 ember 来说有点新,所以不确定我还能做些什么进一步的调试。该项目的源代码是:

http://github.com/allistera/mileager.io-front

当我跑步时

$余烬测试

从我的命令行我得到同样的错误...

感谢您的帮助!

【问题讨论】:

  • 你找出问题所在了吗?我遇到了同样的错误:...at http://localhost:7357/assets/test-support.js:6647: Could not find module 'ember-modal-dialog/initializers/add-modals-container'...
  • 不,我没有抱歉,我最终转而使用编译后的 CSS 版本,而不是实现的 SASS 版本。我认为问题在于 ember-cli-materialise 包,但从来没有时间去追踪它。
  • 在留下上面的评论之后,我碰巧想到了这一点,至少对于我的项目而言。我已经在下面发布了对我有用的解决方案。最好的!

标签: ember.js ember-cli


【解决方案1】:

据我所知...(这是我上面评论的后续内容——我遇到了同样的问题)。

这个问题的根本原因是 PhantomJS 1.9.x 不支持 ember-cli-materialize 中使用的 ES5(特别是 Function.prototype.bind)。症状是 Ember 验收测试将在 Phantom 中失败,但在运行 ember test --server 时在您的浏览器中通过。解决方案是将您的 phantom 二进制文件升级到 2.0,或者在您的 Ember 项目中使用插件 ember-cli-es5-shim

这里有一个 PR 打开:https://github.com/mike-north/ember-cli-materialize/pull/237ember-cli-materialize README 中添加关于此的注释。

有关更多背景信息,请查看问题线程:https://github.com/ember-cli/ember-cli/issues/2634

希望对您有所帮助 - 如果您碰巧实施了此解决方案,以及它是否解决了问题,请告诉我。

【讨论】:

  • 非常感谢马克斯!现在可以移回 SCSS 版本了。
猜你喜欢
  • 1970-01-01
  • 2020-06-22
  • 2018-05-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-13
相关资源
最近更新 更多