ember.js - 如何测试在组件 Ember 测试中调用的操作

标签 ember.js ember-cli ember-testing

如何测试组件中是否调用了某个操作?

有多种方式可以触发一个 Action ,比如点击一个按钮。现在我想测试单击该按钮时调用的操作是否实际调用。像 expect.functionName.to.be.called 之类的东西。

我有以下代码

test('it closes the create dialog when close btn is clicked', function(assert) {
  this.render(hbs`{{group-create cancelCreateAction="cancelAction"}}`)

  this.$('button.btn--primary').click()
  expect('myAction').to.be.called?
})

所以我只是想知道我可以在那里做什么?

最佳答案

嗯,你的行为做了一些我们不知道的事情。但这是我编写的一个小测试,用于检查一些 DOM 元素和当前路由。除非您告诉我们您的操作是做什么的,否则很难说清楚。

click('.someSavingButton');

   andThen(function() {
     assert.equal(currentRouteName(), 'index');
     assert.equal(find('.something-new-in-the-dom').length, 1, "New item in HTML");

关于ember.js - 如何测试在组件 Ember 测试中调用的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33590601/

相关文章:

jquery - 如何在 ember 集成测试中聚焦/模糊某个组件?

jquery - Ember 验收测试多个按键事件

javascript - 如何使用带有文本框的模板,其中加载了从 ember.js 中的调用模板传递的数据

ruby-on-rails - 嵌套路由错误 Ember.JS 和 Rails

ember.js - 如何使用 Ember 3 创建/安装 ember-cli 自定义测试助手?

ember.js - Ember.Application.create 与 Ember.Application.extend

javascript - Ember 数据 : model and hasMany submodels not persisting

javascript - 在 Ember.js 中集成测试路由模板

javascript - 没有任何东西处理 Emberjs 2 的操作

javascript - Ember 数据在一些实例被添加到关系后对模型进行一般搜索