单元测试
让我们门首先了解下这个单元测试模板会用到哪些工具:
Karma: 启动浏览器,运行测试,生成测试结果报告。
karma-webpack: karma调用webpack打包接口的插件。
Mocha: 我们会使用这个测试框架来写测试代码。
Chai: 提供更好的测试断言的库。
Sinon: 提供 spies , stubs , mocks 的测试库。
Chai 和 Sinon 都集成在 karma-sinon-chai, 所以所有的 Chai 接口 (should
, expect
, assert
) 和 sinon
在测试文件中是公共变量。
还有下列文件:
index.js
这是
karma-webpack
打包所有测试代码的入口文件。多半情况你可以忽略它。specs/
这个目录内放的是你实际写的测试代码。在测试代码中你可以使用 ES2015 和所有 Webpack 支持的加载器。
karma.conf.js
这是 Karma 的配置文件。点击 Karma docs 获取更多。
在更多浏览器中运行测试
安装 karma launchers ,然后在 test/unit/karma.conf.js
内加入相应的 browsers
属性,就可以在多个浏览器中运行测试。
Mocking Dependencies
这个模板默认自带 inject-loader 。点击 vue-loader docs on testing with mocks 查看 *.vue
组件的用法。