测试vue单文件组件遇到的问题

在使用jest对vue单文件组件进行测试的时候报错,报错内容如下:

Test suite failed to run

    Jest encountered an unexpected token

    This usually means that you are trying to import a file which Jest cannot parse, e.g. it's not plain JavaScript.

    By default, if Jest sees a Babel config, it will use that to transform your files, ignoring "node_modules".

    Here's what you can do:
     • To have some of your "node_modules" files transformed, you can specify a custom "transformIgnorePatterns" in your config.
     • If you need a custom transformation specify a "transform" option in your config.
     • If you simply want to mock your non-JS modules (e.g. binary assets) you can stub them out with the "moduleNameMapper" config option.

    You'll find more details and examples of these config options in the docs:
    https://jestjs.io/docs/en/configuration.html

    Details:

    SyntaxError: Unexpected token } in JSON at position 629
        at JSON.parse (<anonymous>)

      at parse (node_modules/tsconfig/src/tsconfig.ts:195:15)
      at readFileSync (node_modules/tsconfig/src/tsconfig.ts:181:10)
      at Object.loadSync (node_modules/tsconfig/src/tsconfig.ts:151:18)
      at find (node_modules/vue-jest/lib/load-typescript-config.js:33:39)
      at loadTypescriptConfig (node_modules/vue-jest/lib/load-typescript-config.js:73:26)
      at compileTypescript (node_modules/vue-jest/lib/compilers/typescript-compiler.js:9:20)
      at processScript (node_modules/vue-jest/lib/process.js:23:12)
      at Object.module.exports [as process] (node_modules/vue-jest/lib/process.js:42:18)

下面是测试的代码:

import Test from './test.vue';
import { mount } from '@vue/test-utils';

describe('Test', () => {
  test('test1', () => {
    expect('qwe').toBe('qwe');
  })

  test('test2', () => {
    const wrapper = mount(Test);
    expect(wrapper.text()).toMatch('TEST');
  })
})

想知道这是什么原因,怎么解决

两个test函数中间少了一个逗号或者是什么东西,看着很奇怪

编译js失败了,配置babel,transformIgnorePatterns或者moduleNameMapper配置项