本文引用的文件
本测试策略文档面向“AI有声书生成平台”,覆盖单元测试、集成测试、端到端测试、性能测试、安全测试与回归测试,并提供测试环境搭建、测试数据准备、测试报告生成与缺陷跟踪流程建议。目标是在保障质量的同时,提升交付效率与稳定性。
项目采用前后端分离架构:
测试:包含 Playwright 端到端脚本与简单的 HTTP API 测试脚本
graph TB
subgraph "前端"
FE_H5["H5 应用<br/>uniapp + Vue 3"]
FE_MP["小程序应用<br/>多端适配"]
end
subgraph "后端"
KOA["Koa 应用<br/>server/src/app.ts"]
MOD_AUTH["认证模块<br/>auth.service.ts"]
MOD_TTS["TTS 模块<br/>tts.service.ts"]
MWARE_SEC["安全中间件<br/>security.ts"]
end
subgraph "测试"
PW["Playwright 端到端<br/>full-test.js / simple-test.js"]
HTTP["HTTP API 测试<br/>test-all-apis.js"]
end
FE_H5 --> KOA
FE_MP --> KOA
PW --> KOA
HTTP --> KOA
KOA --> MOD_AUTH
KOA --> MOD_TTS
KOA --> MWARE_SEC
图表来源
章节来源
章节来源
后端通过中间件统一处理安全与性能,模块化提供业务能力;前端通过 Playwright 进行端到端验证,同时提供 HTTP 脚本进行 API 快速验证。
sequenceDiagram
participant FE as "前端应用"
participant KOA as "Koa 应用"
participant SEC as "安全中间件"
participant AUTH as "认证模块"
participant TTS as "TTS 模块"
FE->>KOA : "HTTP 请求"
KOA->>SEC : "中间件链 : 安全/日志/限流"
SEC-->>KOA : "校验通过"
KOA->>AUTH : "登录/用户信息"
AUTH-->>KOA : "JWT/用户信息"
KOA->>TTS : "文本转音频"
TTS-->>KOA : "音频URL/状态"
KOA-->>FE : "JSON 响应"
图表来源
章节来源
第三方服务测试
WebSocket事件推送与失败标记文件
flowchart TD
Start(["开始集成测试"]) --> Setup["准备测试环境<br/>数据库快照/容器"]
Setup --> Mock["配置Mock Provider/存储"]
Mock --> AuthAPI["调用认证API<br/>登录/获取用户信息"]
AuthAPI --> TTSAPI["调用TTS生成API<br/>分段/合并/上传"]
TTSAPI --> DBCheck["校验数据库写入<br/>AudioRecord/章节状态"]
DBCheck --> StorageCheck["校验存储上传<br/>OSS/本地"]
StorageCheck --> WS["校验WebSocket事件"]
WS --> Report["生成测试报告"]
Report --> End(["结束"])
图表来源
章节来源
自动化与截图
Playwright驱动,失败自动截图便于定位
sequenceDiagram
participant Browser as "Playwright 浏览器"
participant Page as "页面"
participant API as "后端API"
participant Store as "存储服务"
Browser->>Page : "打开视频生成页面"
Page->>API : "GET /api/video/projects"
API-->>Page : "返回项目列表"
Page->>API : "POST /api/video/projects"
API->>Store : "上传/生成资源"
Store-->>API : "返回访问地址"
API-->>Page : "返回成功"
Page-->>Browser : "渲染结果/截图"
图表来源
章节来源
章节来源
章节来源
章节来源
测试依赖:Playwright
graph LR
FE_PKG["前端依赖<br/>uni-app/Pinia/Vue3"] --> FE_APP["前端应用"]
BE_PKG["后端依赖<br/>Koa/Prisma/Redis/OSS"] --> BE_APP["后端应用"]
TEST_PKG["测试依赖<br/>Playwright"] --> TEST_RUN["测试运行"]
FE_APP --> BE_APP
TEST_RUN --> BE_APP
图表来源
章节来源
章节来源
章节来源
通过分层测试策略与自动化流水线,可在保障质量的前提下加速交付。建议优先完善单元测试覆盖率与Mock配置,强化集成测试对核心业务链路的覆盖,并持续优化端到端测试与性能测试,确保平台在多端稳定运行。
章节来源