build: 优化test性能
This commit is contained in:
@@ -5,13 +5,14 @@ import Vue from '@vitejs/plugin-vue';
|
|||||||
|
|
||||||
const r = (p: string) => resolve(__dirname, p);
|
const r = (p: string) => resolve(__dirname, p);
|
||||||
|
|
||||||
export default defineConfig({
|
const alias = {
|
||||||
plugins: [Vue()],
|
'@editor': r('./packages/editor/src'),
|
||||||
|
'@form': r('./packages/form/src'),
|
||||||
|
'@data-source': r('./packages/data-source/src'),
|
||||||
|
};
|
||||||
|
|
||||||
|
export default defineConfig({
|
||||||
test: {
|
test: {
|
||||||
include: ['./packages/*/tests/**', './runtime/*/tests/**'],
|
|
||||||
environment: 'happy-dom',
|
|
||||||
environmentMatchGlobs: [['packages/cli/**', 'node']],
|
|
||||||
coverage: {
|
coverage: {
|
||||||
include: ['packages/*/src/**'],
|
include: ['packages/*/src/**'],
|
||||||
exclude: [
|
exclude: [
|
||||||
@@ -22,21 +23,51 @@ export default defineConfig({
|
|||||||
'./packages/*/types/**',
|
'./packages/*/types/**',
|
||||||
'./packages/*/tests/**',
|
'./packages/*/tests/**',
|
||||||
'./packages/cli/lib/**',
|
'./packages/cli/lib/**',
|
||||||
'./packages/ui/**',
|
|
||||||
'./packages/ui-react/**',
|
|
||||||
'./packages/design/**',
|
'./packages/design/**',
|
||||||
'./packages/element-plus-adapter/**',
|
'./packages/element-plus-adapter/**',
|
||||||
'./packages/tdesign-vue-next-adapter/**',
|
'./packages/tdesign-vue-next-adapter/**',
|
||||||
],
|
],
|
||||||
extension: ['.ts', '.vue'],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
resolve: {
|
|
||||||
alias: {
|
|
||||||
'@editor': r('./packages/editor/src'),
|
|
||||||
'@form': r('./packages/form/src'),
|
|
||||||
'@data-source': r('./packages/data-source/src'),
|
|
||||||
},
|
},
|
||||||
|
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 },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
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 },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user