官方文档 https://cn.vuejs.org/v2/cookbook/unit-testing-vue-components.html

vue单元测试官方文档 https://vue-test-utils.vuejs.org/zh/

测试单文件官方demo

https://github.com/vuejs/vue-test-utils-jest-example

.vue单文件测试

demo目录

image.png

依赖安装的说明

  1. npm install --save-dev jest @vue/test-utils
  2. npm install --save-dev vue-jest
  3. npm install --save-dev babel-jest
  4. npm install --save-dev babel-jest

package.json

  1. {
  2. // ...
  3. "jest": {
  4. "moduleFileExtensions": [
  5. "js",
  6. "json",
  7. // 告诉 Jest 处理 `*.vue` 文件
  8. "vue"
  9. ],
  10. "transform": {
  11. // `vue-jest` 处理 `*.vue` 文件
  12. ".*\\.(vue)$": "vue-jest",
  13. // `babel-jest` 处理 js
  14. "^.+\\.js$": "<rootDir>/node_modules/babel-jest"
  15. }
  16. }
  17. }

.babelrc

  1. {
  2. "presets": [["env", { "modules": false }]],
  3. "env": {
  4. "test": {
  5. "presets": [["env", { "targets": { "node": "current" } }]]
  6. }
  7. }
  8. }