1
0
mirror of synced 2026-05-20 17:28:42 +08:00

build: 优化test性能

This commit is contained in:
roymondchen
2026-05-18 12:49:04 +08:00
parent f1aedc4ce7
commit c45df6f6ec

View File

@@ -5,13 +5,14 @@ import Vue from '@vitejs/plugin-vue';
const r = (p: string) => resolve(__dirname, p);
export default defineConfig({
plugins: [Vue()],
const alias = {
'@editor': r('./packages/editor/src'),
'@form': r('./packages/form/src'),
'@data-source': r('./packages/data-source/src'),
};
export default defineConfig({
test: {
include: ['./packages/*/tests/**', './runtime/*/tests/**'],
environment: 'happy-dom',
environmentMatchGlobs: [['packages/cli/**', 'node']],
coverage: {
include: ['packages/*/src/**'],
exclude: [
@@ -22,21 +23,51 @@ export default defineConfig({
'./packages/*/types/**',
'./packages/*/tests/**',
'./packages/cli/lib/**',
'./packages/ui/**',
'./packages/ui-react/**',
'./packages/design/**',
'./packages/element-plus-adapter/**',
'./packages/tdesign-vue-next-adapter/**',
],
extension: ['.ts', '.vue'],
},
projects: [
{
plugins: [Vue()],
resolve: { alias },
test: {
name: 'dom',
include: ['./packages/*/tests/**', './runtime/*/tests/**'],
exclude: ['./packages/cli/tests/**', './packages/editor/tests/unit/hooks/use-stage.spec.ts'],
environment: 'happy-dom',
pool: 'vmThreads',
vmMemoryLimit: '2GB',
maxWorkers: 8,
// 配置不同 pool/maxWorkers 的项目需要分到不同 group否则 vitest 无法调度
sequence: { groupOrder: 0 },
},
},
resolve: {
alias: {
'@editor': r('./packages/editor/src'),
'@form': r('./packages/form/src'),
'@data-source': r('./packages/data-source/src'),
{
plugins: [Vue()],
resolve: { alias },
test: {
name: 'dom-forks',
include: ['./packages/editor/tests/unit/hooks/use-stage.spec.ts'],
environment: 'happy-dom',
pool: 'forks',
isolate: false,
sequence: { groupOrder: 1 },
},
},
{
plugins: [Vue()],
resolve: { alias },
test: {
name: 'node',
include: ['./packages/cli/tests/**'],
environment: 'node',
pool: 'forks',
isolate: false,
sequence: { groupOrder: 2 },
},
},
],
},
});