Ember - 获取测试中组件中元素的动态输入值

时间:2017-03-19 13:44:35

标签: ember.js ember-testing

所以我有一个简单的组件,如下所示:

<div class="my-div">{{ value }}</div>
{{input class="my-input" type="text" value=value}}

我有两个这样的测试:

test('get text from div', function(assert) {

  this.set('value', 'my test value');
  this.render(hbs`{{input-test value=value}}`);

  assert.equal(this.$('.my-div').text(), 'my test value');

});

test('get value from input', function(assert) {

  this.set('value', 'my test value');
  this.render(hbs`{{input-test value=value}}`);

  assert.equal(this.$('.my-input').attr('value'), 'my test value');

});

第一次测试通过,但第二次测试失败。 this.$('.my-input').attr('value')似乎是undefined。为什么?我怎样才能通过测试?

1 个答案:

答案 0 :(得分:1)

使用val()

assert.equal(this.$('.my-input').val(), 'my test value');

API ref:jquery val