Files
CFspider/cfspider-browser/TESTING_GUIDE.md
2026-01-30 02:48:41 +08:00

4.2 KiB
Raw Permalink Blame History

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 查找正确选择器
  • 检查账号密码格式

性能指标

使用一段时间后,应该看到:

  • 技能数量持续增长
  • 每个技能的成功率提升
  • 操作速度加快
  • 错误率降低
  • 记忆库积累丰富