# CFSpider 功能测试指南 ## 快速开始 重启应用后,所有新功能即可使用。 ## 测试场景 ### 1. 精确元素定位测试 **场景**: 打开 GitHub **步骤**: ``` 用户: "打开 GitHub" AI: 1. 搜索 GitHub 2. scan_interactive_elements() -> 显示所有链接列表 3. click_by_index(type="link", index=1) -> 精确点击第1个链接 4. 到达 github.com ``` **预期**: - 不会误点到 Copilot - 不会误点到图片搜索 - 不会误点到翻页按钮 ### 2. 学习记忆测试 **场景**: 重复操作学会技能 **步骤**: ``` Day 1: "打开淘宝" -> 成功 Day 2: "打开淘宝" -> 成功(记忆强化) Day 3: "打开淘宝" -> 成功(自动生成技能) Day 4: "打开淘宝" -> 使用技能,更快 ``` **预期**: - 第3次成功后在 `skills.json` 中出现新技能 - AI 会显示技能提示 - 操作更快更准确 ### 3. 遗忘与回忆测试 **场景**: 长时间不用会遗忘 **模拟**: ``` 1. 修改 learning-memory.json 中某个记忆的 timestamp 改为 30 天前 2. 重启应用 3. 尝试相同操作 预期反应: - "我靠,我忘记了..." - "我记得好像是...但不太确定了" - 5% 概率:"诶?我突然想起来了!" ``` ### 4. 自动关闭弹窗测试 **场景**: 访问爱奇艺或视频网站 **步骤**: ``` 用户: "打开爱奇艺" AI: 打开网站 -> 页面出现"浏览器版本过低"弹窗 -> 2秒内自动点击"继续使用" -> 弹窗关闭 ``` **预期**: - 广告弹窗自动关闭 - 版本提示自动关闭 - 登录框不会被关闭 ### 5. 智能登录测试 **场景**: 访问需要登录的网站 **步骤**: ``` 用户: "打开 GitHub 并访问我的仓库" AI: 检测到需要登录 -> detect_login(domain="github.com") -> request_login_choice() -> 显示选项 用户: "自动登录" AI: 提示输入账号密码 用户: 账号: user@example.com 密码: your_password AI: 提取账号密码 -> auto_login() -> 移动鼠标到用户名框 -> 点击并输入 -> 移动到密码框 -> 点击并输入 -> 点击登录按钮 -> 保存到 credentials.json ``` **预期**: - 自动填写流畅自然 - 凭证加密保存 - 下次直接使用 ### 6. 思考行为测试 **场景**: 观察 AI 思考时的鼠标 **步骤**: ``` 用户: "打开京东搜索手机" 观察: - AI 开始思考时,鼠标变橙色 - 鼠标持续不停地移动 - 停顿很短(50-150ms) - 像真人思考时鼠标漫无目的移动 ``` **预期**: - 鼠标颜色:橙色(思考)、红色(错误)、绿色(正常) - 思考时几乎不停顿 - 操作完成后继续思考 ### 7. 技能匹配测试 **场景**: 技能自动匹配 **步骤**: ``` 用户: "搜索 Python" AI: -> 匹配到技能:必应搜索 -> 显示技能提示 -> 按技能流程执行 -> 更新技能使用次数和成功率 ``` **预期**: - 控制台显示:`[CFSpider] Matched skill: 必应搜索` - AI 按照技能步骤执行 - skills.json 中成功率提升 ## 检查文件 ### 记忆文件 ``` %APPDATA%/cfspider-browser/learning-memory.json ``` 查看内容: - 每个记忆的强度 - 回忆次数 - 时间戳 ### 技能文件 ``` %APPDATA%/cfspider-browser/skills.json ``` 查看内容: - 技能列表 - 使用次数 - 成功率 - 学习到的模式 ### 凭证文件 ``` %APPDATA%/cfspider-browser/credentials.json ``` 查看内容: - 域名 - 用户名 - 加密的密码(不可读) ## 故障排查 ### 点击不准确 - 检查是否使用了 `scan` + `click_by_index` - 如果还不准,使用 `visual_click` ### 思考时鼠标不动 - 检查 VirtualMouse.tsx 的 fidget 模式 - 停顿时间应该是 50-150ms ### 弹窗没有自动关闭 - 检查控制台:`[CFSpider] Auto-clicking continue button` - 手动调用 `close_popup()` 工具 ### 技能没有生成 - 检查记忆强度是否 >= 70 - 检查成功次数是否 >= 3 - 查看 `learning-memory.json` ### 登录失败 - 检查选择器是否正确 - 使用 `scan_interactive_elements` 查找正确选择器 - 检查账号密码格式 ## 性能指标 使用一段时间后,应该看到: - 技能数量持续增长 - 每个技能的成功率提升 - 操作速度加快 - 错误率降低 - 记忆库积累丰富