# 测试指南 ## 测试目录结构 ``` tests/ ├── conftest.py # 全局 fixtures 和配置 ├── unit/ # 单元测试(无外部依赖,可离线运行) │ ├── test_paste.py # 基础导入和版本 │ ├── test_snow_id.py # 雪花ID生成器 │ ├── test_jwt.py # JWT 令牌(mock) │ ├── test_configure.py # 配置管理(mock) │ ├── test_pagination.py # 分页逻辑 │ ├── test_ustr.py # 字符串工具 │ └── test_udict.py # 字典工具 ├── integration/ # 集成测试(需要真实服务) │ └── test_db.py # 数据库连接测试 └── README.md # 本文件 ``` ## 运行方式 ### 运行所有单元测试(推荐日常使用) ```bash cd <项目根目录> pytest tests/unit/ -v ``` ### 运行所有测试(含集成测试) ```bash pytest tests/ -v ``` ### 仅运行集成测试 ```bash pytest tests/integration/ -v ``` ### 生成覆盖率报告 ```bash pytest tests/unit/ --cov=paste --cov-report=html open htmlcov/index.html ``` ## 编写规范 1. **单元测试**放在 `tests/unit/`,无外部依赖 2. **集成测试**放在 `tests/integration/`,加 `@pytest.mark.integration` 3. 每个测试类以 `Test` 开头,测试方法以 `test_` 开头 4. 使用断言而非 print 验证结果 5. 不依赖外部配置文件或数据库连接