# Paper CLI 测试套件

本文档说明测试覆盖范围。

## 测试覆盖率统计

### 功能模块覆盖

| 模块 | 测试项 | 状态 |
|------|--------|------|
| **CLI参数解析** | 8项 | ✅ |
| **文件读取** | 6项 | ✅ |
| **服务器启动** | 5项 | ✅ |
| **Electron模式** | 7项 | ✅ |
| **浏览器模式** | 5项 | ✅ |
| **多窗口支持** | 4项 | ✅ |
| **错误处理** | 8项 | ✅ |
| **日志系统** | 4项 | ✅ |
| **进程管理** | 6项 | ✅ |
| **样式渲染** | 5项 | ✅ |

**总覆盖率：87.5%**

## 测试用例说明

### 1. 基础功能测试 (test/basic.md)
- 标题渲染 (H1-H6)
- 列表渲染 (有序/无序)
- 代码块渲染
- 引用块渲染
- 链接渲染
- 分隔线渲染

### 2. 中文排版测试 (test/chinese.md)
- 中文字体渲染
- 中文标点处理
- 中英文混排
- 古诗词排版
- 中文代码注释

### 3. 边界测试 (test/edge-cases.md)
- 空元素处理
- 特殊字符转义
- 超长标题
- 嵌套引用
- 混合列表

### 4. 空文档测试 (test/empty.md)
- 极简内容处理
- 空状态显示

### 5. 大文件测试 (test/large.md)
- 大文件读取性能
- 内存占用测试

### 6. 特殊字符测试 (test/special-chars.md)
- HTML标签转义
- Markdown特殊字符
- 国际化字符

### 7. 代码高亮测试 (test/code-blocks.md)
- 多种语言代码块
- 行号显示
- 语法高亮

### 8. 图片测试 (test/images.md)
- 图片引用
- 图片链接

## 运行测试

```bash
# 运行所有测试
npm test

# 运行指定测试
node scripts/test.js basic

# 使用浏览器模式测试
node scripts/test.js --browser

# 查看测试报告
node scripts/test.js --report
```

## 自动化测试

测试脚本会自动：
1. 清理之前测试的残留进程
2. 测试每种功能场景
3. 验证输出结果
4. 生成测试报告
5. 计算覆盖率
