我想测试我的ember组件。我没有使用ember-cli.I遵循ember指南中给出的内容。但是this.subject()方法是未定义的。 另外,我收到以下错误
setUp failed on <test-case-name> : assert.async is not a function
Died on test #2 : this.render is not a function
TearDown Failed on <test-case-name> : assert.async is not a function
我还没有使用任何异步功能。在我的测试用例中,我单独写了一行this.render()。
先谢谢, 库卡
答案 0 :(得分:0)
默认情况下,在Ember 2.0中,您正在编写集成测试,而不是单元测试。出于某种原因,您不允许在集成测试中访问组件对象。
要使测试成为单元测试,请将unit: true
添加到测试模块定义中:
moduleForComponent('pretty-color', {
unit: true,
// specify the other units that are required for this test
// needs: ['component:foo', 'helper:bar']
});
不幸的是,文档目前已过时,并未讨论组件集成测试。要了解有关集成测试的更多信息,请参阅http://alisdair.mcdiarmid.org/ember-component-integration-tests/