集成测试渲染过程 - EmberJS

时间:2016-09-02 19:35:46

标签: ember.js npm ember-qunit es6-modules

我正在为我的一个插件组件编写集成测试。我还使用npm link将其与兄弟项目相关联:

.. projects/
.... my-project/
.... my-linked-project/

我使用了my-linked-project组件中的my-project个mixins之一。

//my-project/addon/components/my-component/component.js
import Ember from 'ember';
import ExternalMixin from 'my-linked-project/mixins/foo'

export default Ember.Component.extend(ExternalMixin, {
    ...
}

这在应用程序运行时运行良好,但在我的集成测试中render时似乎遇到了一些问题。

//my-project/tests/integration/components/my-component-test.js
import { moduleForComponent, test } from 'ember-qunit';
import hbs from 'htmlbars-inline-precompile';

moduleForComponent('my-component', 'Integration description', {
    integration: true
}

test('should render', function() {
    this.render(hbs`{{my-component}}`);
}

但是我得到Error: Could not find module 'my-linked-project/mixins/foo'

  1. 在哪里可以详细了解调用render / hbs时会发生什么?
  2. 问题可能是测试文件的位置,找不到外部链接的项目吗?

1 个答案:

答案 0 :(得分:0)

值得暂时从科技等式中移除npm link以查看是否会导致您的问题。你有什么看起来很好......