如何将测试保留在 Vite 项目的源目录之外?

2024-03-05

Running npm init vue@latest通过以下设置

生成一个 Vitest 规范文件src目录。我想知道为什么 Cypress e2e 测试有一个单独的目录,而 Vitest 单元测试就在源代码旁边。有什么原因吗?

我想将这些测试移动到根目录(等于cypress),创建了一个vitest目录并移至其中的规范。

测试本身通过了,但我认为我必须更改 sopme 配置以从构建等中排除测试。

文件里面tsconfig.app.json我改变了线路"exclude": ["src/**/__tests__/*"], to "exclude": ["vitest"],.

还有什么我应该做的吗?或者有什么理由将 Vitest 测试保留在源目录中?


要将测试文件夹获取到源文件夹之外:

  1. 创建一个vitest根目录下的文件夹
  2. move ./src/components/__tests__ to ./vitest/__tests__
  3. 测试中*.spec文件,您将导入组件alias @
  • import HelloWorld from '@/components/HelloWorld.vue'
  1. in tsconfig.app.json
  • change "exclude": ["src/**/__tests__/*"], to "exclude": ["vitest/**/__tests__/*"],
  1. run npm run build && npm run test:unit

您介意解释一下为什么保留testsvitest 目录内的目录?

您不需要保留此文件夹。这是一个约定,请查看下面????

如果你想把spec文件在tests没有子文件夹的文件夹,然后只需添加到vite.config.ts :

test: {
    include: ['./vitest/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}']
  }

然后也调整tsconfig.app.json: "exclude": ["vitest/**/*"],

的结果yarn run test:unit

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将测试保留在 Vite 项目的源目录之外? 的相关文章

随机推荐