测试体系
现状
注意
项目目前未安装测试框架。以下内容为测试体系的规划方案,待后续实现。
计划中的测试框架
- 单元测试:Vitest(
tests/unit/**/*.spec.ts) - E2E 测试:Playwright(
tests/e2e/**/*.spec.ts)
规划的命令
安装测试框架后,在 antdv-next-admin/ 目录执行:
bash
# 单测
npm run test
npm run test:unit
# 单测覆盖率
npm run test:unit:coverage
# E2E
npm run test:e2e
npm run test:e2e:ui
npm run test:e2e:debug配置文件规划
安装测试框架后需要创建:
- Vitest 配置:
vitest.config.tsenvironment: 'jsdom'include: ['tests/unit/**/*.spec.ts']
- Playwright 配置:
playwright.config.tstestDir: './tests/e2e'webServer.command: 'pnpm dev'- 默认
baseURL: 'http://localhost:3000'
推荐分层
- 单元测试:覆盖工具函数、store 纯逻辑、权限判断。
- 组件测试:覆盖关键交互(表单校验、弹窗流程、插槽渲染)。
- E2E 测试:覆盖登录、动态路由、核心业务链路。
最小 CI 落地(PR 级)
yaml
name: test
on:
pull_request:
jobs:
verify:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
cache: npm
- run: npm ci
- run: npm run type-check
- run: npm run test:unit
- run: npx playwright install --with-deps
- run: npm run test:e2e用例优先级建议
- P0:
auth登录成功/失败、退出登录。 - P0:
permission不同角色菜单与按钮差异。 - P1:
system.user新增、编辑、删除、筛选与分页。 - P1:
request-auth401 刷新与并发重试。 - P2:多语言切换、主题切换、标签页缓存一致性。
安装测试框架
如果需要添加测试支持,可执行:
bash
# 安装 Vitest
pnpm add -D vitest @vue/test-utils jsdom
# 安装 Playwright
pnpm add -D @playwright/test