VUE:Ava无法运行任何断言错误

时间:2017-07-13 14:18:09

标签: javascript vuejs2 ava

我的文件夹结构如下:

./的package.json

的src / Notification.js

测试/ notification.js

文件Notification.js

export default {
  template: '<div>{{message}}</div>',
  data() {
    return {
      message: 'Hello world'
    };
  }
};

文件notification.js

import Vue from 'vue';
import test from 'ava';
import Notification from '../src/Notification';
test('that it renders a notification', t => {
  new Vue(Notification).$mount();
});

运行时出错:node_modules / .bin / ava

[Vue warn]: You are using the runtime-only build of Vue where the 
template compiler is not available. Either pre-compile the templates
into render functions, or use the compiler-incluided build. (found in
<Root>)
1failed
that it renders a notification
test finished without running any assertions

如果有人能说出我的错误并解释代码,我将非常感激。

2 个答案:

答案 0 :(得分:1)

您的测试未使用任何assertions。您可能想要在new Vue(Notification).$mount()返回值上断言。如果你只是确保它不会抛出异常,你可以t.notThrows(() => new Vue(Notification).$mount())

答案 1 :(得分:0)

Vue附带了几个版本,一些版本使用模板编译器,另一些版本没有。您现在导入Vue的方式是,不包含模板编译器,因此Vue无法编译

template: '<div>{{message}}</div>',

尝试使用编译器导入Vue版本。

import Vue from "vue/dist/vue"