|
1 | 1 | # TestPilot AI 开发备忘录 |
2 | 2 |
|
3 | | -> 最后更新:2026-03-07(v10.2 多端Demo验证推进中 | 小程序Demo+桌面蓝本+MCP工具+API端点+940测试) |
| 3 | +> 最后更新:2026-03-07(v10.2 完成 | 独立蓝本多选+start_command自动启动+全局蓝本UI+编程AI智能审视 | 947测试) |
4 | 4 | > 项目结构详见 README.md,此处不重复。 |
5 | 5 |
|
6 | 6 | --- |
@@ -705,46 +705,66 @@ MCP配置文件位置:`~/.codeium/windsurf/mcp_config.json`(即 `C:\Users\ |
705 | 705 |
|
706 | 706 | --- |
707 | 707 |
|
708 | | -### v10.2 进展记录(2026-03-07) |
709 | | - |
710 | | -#### 已完成 |
711 | | - |
712 | | -**测试修复** |
713 | | -- `tests/test_blueprint_generator.py`:`test_from_url_full_flow` mock修复(chat替代analyze_screenshot) |
714 | | -- 932测试全通过 |
715 | | - |
716 | | -**shop-demo 响应式布局** |
717 | | -- `shop-demo/index.html`:添加 viewport meta |
718 | | -- `shop-demo/style.css`:添加 `@media (max-width: 768px)` 响应式规则 |
719 | | -- 侧边栏变顶部横排、统计卡片两列、表格紧凑、表单纵向排列 |
720 | | - |
721 | | -**微信小程序 Demo(miniprogram-demo/)** |
722 | | -- 含4个预埋Bug的测试小程序(BuggyMini) |
723 | | -- Bug1: 机械键盘加入购物车价格从199变599 |
724 | | -- Bug2: 总价浮点精度问题 |
725 | | -- Bug3: 空购物车直接跳转不提示 |
726 | | -- Bug4: 总价超500结算报Error 500 |
727 | | -- 包含 testpilot.json 蓝本 |
728 | | - |
729 | | -**桌面应用测试蓝本(desktop-demo/)** |
730 | | -- `desktop-demo/testpilot.json`:应用启动验证+页面导航场景 |
731 | | - |
732 | | -**MCP 新增工具(共9个)** |
733 | | -- `run_miniprogram_test`:小程序蓝本测试 |
734 | | -- `run_desktop_test`:桌面应用蓝本测试 |
735 | | - |
736 | | -**API 新增端点** |
737 | | -- `POST /api/v1/test/miniprogram-blueprint`:小程序蓝本测试 |
738 | | -- `POST /api/v1/test/desktop-blueprint`:桌面应用蓝本测试 |
739 | | - |
740 | | -**单元测试** |
741 | | -- `tests/test_mcp_server.py`:新增8个测试(小程序+桌面MCP工具) |
742 | | -- 总测试数:932 -> 940,全部通过 |
743 | | - |
744 | | -#### 下次待办 |
745 | | - |
746 | | -1. **手机实机验证**:USB连Android手机,启动Appium,运行 `run_mobile_blueprint_test` |
747 | | -2. **小程序实机验证**:安装微信开发者工具,开启服务端口,运行 `run_miniprogram_test` |
748 | | -3. **桌面应用实机验证**:启动Tauri桌面应用,运行 `run_desktop_test` |
749 | | -4. **蓝本功能描述模式(v10.3)**:URL + 功能简述 -> AI全自动蓝本 |
| 708 | +### v10.2 完成记录(2026-03-07) |
| 709 | + |
| 710 | +#### 核心功能 |
| 711 | + |
| 712 | +**独立蓝本多选+批量执行** |
| 713 | +- Blueprint模型添加 `description` 字段(50-200字功能说明) |
| 714 | +- 后端API:`GET /blueprint/list` 扫描蓝本列表 + `POST /test/blueprint-batch` 批量执行 |
| 715 | +- MCP工具:`list_blueprints` + `run_blueprint_batch`(共11个工具) |
| 716 | +- 插件UI:下拉框改为多选框列表,显示蓝本元数据+悬浮说明预览 |
| 717 | +- 全选按钮 + 批量测试汇总报告 |
| 718 | + |
| 719 | +**蓝本统一存放规范** |
| 720 | +- 6个demo蓝本全部移入 `testpilot/` 子文件夹 |
| 721 | +- 预览服务器扫描逻辑适配 `testpilot/` 目录 |
| 722 | +- copilot-instructions更新:要求按功能模块拆分蓝本(auth/product/order) |
| 723 | + |
| 724 | +**start_command自动启动应用** |
| 725 | +- Blueprint模型添加 `start_command` 和 `start_cwd` 字段 |
| 726 | +- BlueprintRunner测试前自动启动应用并等待就绪(最多30秒) |
| 727 | +- 支持 `npm start`、`python app.py`、`docker-compose up` 等命令 |
| 728 | +- 纯HTML应用留空,走内置预览服务器 |
| 729 | + |
| 730 | +**全局蓝本优先级UI** |
| 731 | +- 蓝本列表顶部固定 🌍 全局蓝本选项(默认勾选) |
| 732 | +- 勾选全局 → 局部蓝本全部灰化禁用 + 悬浮提示 |
| 733 | +- 取消全局 → 局部蓝本恢复可选 |
| 734 | +- 全选按钮只影响局部蓝本 |
| 735 | + |
| 736 | +**编程AI智能审视蓝本** |
| 737 | +- copilot-instructions新增规则:代码变化时自动审视并更新对应模块蓝本 |
| 738 | +- 6种触发条件(覆盖Web/小程序/手机/桌面): |
| 739 | + 1. 新增/删除UI元素 |
| 740 | + 2. 修改元素ID/class/选择器 |
| 741 | + 3. 修改文本内容 |
| 742 | + 4. 修改业务逻辑 |
| 743 | + 5. 修复Bug |
| 744 | + 6. 修改应用配置(URL/端口/路由/权限/启动入口) |
| 745 | +- 其他情况(CSS/注释/重构)自动跳过,节省token |
| 746 | + |
| 747 | +**插件UI优化** |
| 748 | +- 修复侧边栏窄宽度下蓝本列表溢出问题 |
| 749 | +- 文字单行省略 + overflow-x:hidden |
| 750 | +- 蓝本生成提示词更新:要求按模块拆分 + 填写start_command |
| 751 | + |
| 752 | +#### 测试数据 |
| 753 | +- 总测试数:940 -> 947(新增7个批量蓝本测试) |
| 754 | +- 全部通过 |
| 755 | + |
| 756 | +#### Git提交 |
| 757 | +- c0c9d78: 蓝本统一放testpilot/文件夹+修复UI溢出 |
| 758 | +- 802b127: start_command自动启动+预览服务器适配 |
| 759 | +- 20ead48: 全局蓝本优先级UI+互斥逻辑 |
| 760 | +- fbd7f73: copilot-instructions更新+编程AI自动审视蓝本 |
| 761 | +- 4d823e0: 简化蓝本检查规则-只列出需要检查的6种情况 |
| 762 | +- 3c33dca: 蓝本检查规则扩展-全平台覆盖 |
| 763 | + |
| 764 | +#### 下一步(v10.3) |
| 765 | + |
| 766 | +**蓝本功能描述模式(终极目标)** |
| 767 | +- 用户输入:URL + "这个应用有:登录、商品管理、订单管理" |
| 768 | +- AI全自动生成蓝本 → 测试 → 修复 → 0 Bug |
| 769 | +- 无需录制,无需人工参与,完全自动化 |
750 | 770 |
|
0 commit comments