2
0

vitest.config.components.ts 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. import { defineConfig } from 'vitest/config'
  2. import { resolve } from 'path'
  3. export default defineConfig({
  4. test: {
  5. // 测试环境 - 使用happy-dom进行组件测试
  6. environment: 'happy-dom',
  7. // 测试文件匹配模式
  8. include: [
  9. 'src/client/__integration_tests__/**/*.test.{js,ts,jsx,tsx}',
  10. 'src/client/__tests__/**/*.test.{js,ts,jsx,tsx}',
  11. 'src/client/**/__tests__/**/*.test.{js,ts,jsx,tsx}',
  12. 'src/client/**/*.test.{js,ts,jsx,tsx}'
  13. ],
  14. // 排除模式
  15. exclude: [
  16. '**/node_modules/**',
  17. '**/dist/**',
  18. '**/build/**',
  19. '**/coverage/**',
  20. 'src/server/**'
  21. ],
  22. // 覆盖率配置
  23. coverage: {
  24. provider: 'v8',
  25. reporter: ['text', 'lcov', 'html'],
  26. reportsDirectory: './coverage/components',
  27. exclude: [
  28. '**/node_modules/**',
  29. '**/dist/**',
  30. '**/build/**',
  31. '**/coverage/**',
  32. '**/*.d.ts',
  33. 'src/client/api.ts',
  34. '**/__tests__/**',
  35. '**/__mocks__/**',
  36. '**/index.ts',
  37. '**/types.ts',
  38. 'src/server/**'
  39. ],
  40. thresholds: {
  41. branches: 60,
  42. functions: 60,
  43. lines: 60,
  44. statements: 60
  45. }
  46. },
  47. // 全局设置
  48. globals: true,
  49. // 测试超时
  50. testTimeout: 10000,
  51. // 设置文件
  52. setupFiles: ['./src/test/setup.ts'],
  53. // 别名配置
  54. alias: {
  55. '@': resolve(__dirname, './src'),
  56. '@/client': resolve(__dirname, './src/client'),
  57. '@/server': resolve(__dirname, './src/server'),
  58. '@/share': resolve(__dirname, './src/share'),
  59. '@/test': resolve(__dirname, './test')
  60. }
  61. }
  62. })