Vue单元测试 - textContent不包含预期的propsData

时间:2017-08-03 13:59:58

标签: javascript vue.js vuejs2 karma-mocha

这是我的组件:

<template>
  <div>
    {{serviceConfig.name}}
  </div>
</template>

<script>
export default {
  props: ['serviceConfig']
}
</script>

在我的测试中,我正在设置serviceConfig:

    it(`should render serviceConfig`, () => {
    const Constructor = Vue.extend(TestMe2);
    const comp = new Constructor({
        propsData: {
            serviceConfig: '{ "name": "Apple" }'
        }
    }).$mount();

    expect(comp.serviceConfig).to.equal('{ "name": "Apple" }'); // successfull
    expect(comp.$el.textContent).to.contain('Apple'); // unsuccessfull

});

但是,如果我更改模板以便我正在渲染{{serviceConfig}}而不是serviceConfig.name,那么它可以工作,但不是我想要的(因为我只想要名称,即&#39; Apple&#39 )。

1 个答案:

答案 0 :(得分:2)

您将字符串而不是对象传递为serviceConfig