# CSPKit 测试记录

## 2026-08-20 本地验收测试

测试环境：

- 操作系统：Windows
- MoonBit 工具链：本地 `moon` 命令
- 项目目录：`mooncake-auditor-public`
- 测试范围：静态检查、构建、单元测试、可运行示例

执行命令：

```bash
moon fmt --check
moon info
moon check
moon check --deny-warn
moon build
moon test
moon test --deny-warn
moon run cmd/main
```

结果：

- `moon fmt --check`：通过
- `moon info`：通过
- `moon check`：通过
- `moon check --deny-warn`：通过
- `moon build`：通过
- `moon test`：38 个测试全部通过
- `moon test --deny-warn`：38 个测试全部通过
- `moon run cmd/main`：示例正常运行
- MoonBit 非空源码：4390 行
- MoonBit 非注释代码：4048 行

示例输出：

```text
directives=3
blocking=1
added=2
changed=1
header=default-src 'self'; script-src 'self' 'nonce-demo'; object-src 'none'; base-uri 'self'; frame-ancestors 'none'
score=100 grade=A penalty=0 bonus=13
templates=23 valid=23 clean=21 risky=2
```

## 覆盖范围

- CSP 指令解析
- 指令名规范化
- 指令查询
- 重复指令识别
- `default-src` fallback 计算
- 常见风险审计
- 高风险 Finding 筛选
- source expression 分类
- CSP 指令目录
- 审计规则目录
- 策略评分
- 加固建议
- 文本、Markdown、JSON 风格报告
- 内置策略模板
- 策略 diff
- header 规范化输出

## 后续测试计划

- 增加更多 CSP Level 3 指令用例
- 增加异常输入和边界输入测试
- 增加大型策略字符串的性能回归测试
- 在 Mooncakes 发布后补充安装使用测试
