# GitHub Release v1.1.0 发布说明

## 🎉 ptestx v1.1.0 正式发布

**发布日期**: 2026-02-10

---

## 📦 包名说明

由于 PyPI 上 `ptest` 已被占用，本项目以 `ptestx` 名称发布。
安装后所有功能保持不变：
- CLI 命令: `ptest` / `p`
- Python 导入: `import ptest`

```bash
pip install ptestx==1.1.0
ptest --version
```

---

## ✨ 主要新功能

### 1. 测试数据生成器 (Data Generator)
- 支持 30+ 种数据类型（姓名、邮箱、电话、UUID等）
- 批量数据生成，支持 JSON/YAML/CSV/Raw 格式
- 数据模板系统，支持变量替换
- 随机种子支持，实现可重复测试

**CLI 命令**:
```bash
ptest data generate name --count 100 --format json
ptest data template save user_template '{"name": "{{name}}", "email": "{{email}}"}'
```

### 2. API 契约管理 (Contract Management)
- OpenAPI 3.0/2.0 契约导入
- 自动验证响应是否符合契约定义
- 基于契约自动生成测试用例
- 用例持久化存储

**CLI 命令**:
```bash
ptest contract import https://api.example.com/openapi.json --name my_api
ptest contract generate-cases my_api --output cases/
```

### 3. Hooks 系统
- 支持 4 种 Hook 类型：command、api、sql、function
- Setup/Teardown 机制
- 条件执行支持
- 失败处理和超时控制

### 4. YAML 配置管理
- 配置文件模板（minimal/full/api/database）
- 环境变量展开（`$VAR`, `${VAR:-default}`）
- 配置验证功能

**CLI 命令**:
```bash
ptest config init --template api --format yaml
ptest config validate
```

### 5. 测试套件 (Test Suites)
- 测试套件数据模型
- 用例依赖关系管理
- 拓扑排序和验证
- 串行/并行执行模式

**CLI 命令**:
```bash
ptest suite create regression_suite --from-file suite.yaml
ptest suite run regression_suite --parallel
```

### 6. Mock 服务
- Flask-based 轻量级 Mock 服务器
- 条件响应匹配（headers, query, body）
- 请求历史记录
- 模板变量支持

**CLI 命令**:
```bash
ptest mock start payment_gateway --config mocks/payment.yaml
ptest mock logs payment_gateway
```

### 7. 并行执行
- 基于 ThreadPoolExecutor 的并行执行
- 依赖拓扑排序
- 循环依赖检测
- 结果聚合

### 8. Fixtures 机制
- `@fixture` 装饰器
- session/function 作用域
- 依赖注入支持
- Generator teardown 支持

### 9. 增强报告
- 现代化 HTML 模板
- Chart.js 图表（结果分布、时间趋势）
- 响应式布局
- 历史数据对比

---

## 📊 性能指标

| 指标 | 目标 | 实际 |
|------|------|------|
| 数据生成速度 | 1000条/秒 | ✅ 通过 |
| 并行执行效率 | >50% | ✅ 达到 |
| 套件验证 | <1ms | ✅ 达到 |
| 测试覆盖率 | >80% | ✅ 达到 |

---

## 🔒 安全改进

- 修复子进程安全漏洞（使用 shlex 转义）
- 修复 SQL/命令注入风险
- 添加 `use_shell` 和 `allow_unsafe_sql` 配置选项

---

## 🐛 Bug 修复

- 修复 Windows Unicode 编码问题
- 修复 MyPy 类型检查问题
- 修复 Ruff 代码风格问题
- 修复 Docker 引擎模拟模式问题

---

## ⚠️ 兼容性说明

v1.1.0 完全向后兼容 v1.0.x，现有项目升级无需修改代码。

| 版本 | 兼容性 | 说明 |
|------|--------|------|
| v1.0.x → v1.1.0 | ✅ 完全兼容 | 直接升级，无破坏性变更 |

---

## 📦 安装

```bash
pip install ptestx==1.1.0
```

> **注意**: 安装后仍使用 `ptest` 命令行工具

---

## 📝 完整变更日志

查看 [CHANGELOG.md](../CHANGELOG.md) 获取完整变更历史。

---

## 🙏 感谢

感谢

---

**Full Changelog**: https://github.com/cp/ptest/compare/v1.0.1...v1.1.0
