Files
argon-theme/.kiro/steering/multi-api-testing-guide.md
nanhaoluo c37e8da986 feat: 完成统一 AI 查询组件的集成
- 更新 argon_detect_spam_comment_sync() 使用统一接口
- 更新 argon_extract_keywords_from_comment() 使用统一接口
- 删除旧的 argon_call_ai_api_for_spam_detection() 函数
- 删除旧的 argon_call_ai_for_keyword_extraction() 函数
- 所有 AI 查询现在都通过 argon_ai_query() 统一接口
- 所有查询都会记录到 wp_argon_ai_query_log 数据表
- 支持按场景统计(summary/spam_detection/keyword_extraction)
2026-01-26 12:49:49 +08:00

5.9 KiB
Raw Blame History

多 API 管理功能测试指南

测试环境

  • WordPress 后台 → 外观 → Argon 主题选项 → 文章功能 → AI 文章摘要
  • 选择任意 AI 服务商(如 OpenAI

功能特性

1. 多 API 配置管理

  • 每个 AI 服务商可以配置多个 API
  • 每个 API 配置包含配置名称、API 密钥、API 端点(可选)、模型(可选)
  • 通过单选框选择当前使用的 API
  • 支持添加、编辑、删除 API 配置

2. 模型列表刷新

  • 每个 API 配置都可以独立刷新模型列表
  • 根据配置的 API 密钥和端点动态获取可用模型
  • 支持从模型列表中快速选择并应用

3. 向后兼容

  • 如果用户之前没有配置多 API系统会自动从旧配置迁移
  • 创建一个名为"默认配置"的 API 并设置为激活状态

测试步骤

步骤 1添加第一个 API 配置

操作

  1. 选择 AI 服务商(如 OpenAI
  2. 点击"添加新 API 配置"按钮
  3. 填写配置信息:
    • 配置名称:主 API
    • API 密钥sk-test-key-1
    • API 端点:(留空或填写自定义端点)
    • 模型:(留空或填写模型名称)
  4. 点击"刷新"按钮测试获取模型列表
  5. 从模型列表中选择一个模型
  6. 点击"使用选中的模型"按钮
  7. 点击"保存"按钮

预期结果

  • 表单隐藏
  • 显示新添加的 API 配置
  • 该 API 自动被选中(单选框勾选)
  • 显示配置名称、模型、密钥前缀

步骤 2添加第二个 API 配置

操作

  1. 再次点击"添加新 API 配置"按钮
  2. 填写配置信息:
  3. 点击"保存"按钮

预期结果

  • 显示两个 API 配置
  • 第一个 API 仍然被选中
  • 第二个 API 未被选中

步骤 3切换激活的 API

操作

  1. 点击第二个 API 的单选框

预期结果

  • 第二个 API 被选中
  • 第一个 API 取消选中

步骤 4编辑 API 配置

操作

  1. 点击第一个 API 的"编辑"按钮
  2. 修改配置名称为"主 API已更新"
  3. 点击"刷新"按钮重新获取模型列表
  4. 选择一个不同的模型
  5. 点击"保存"按钮

预期结果

  • 表单隐藏
  • 第一个 API 的名称和模型更新
  • 激活状态保持不变(第二个 API 仍然被选中)

步骤 5尝试删除激活的 API

操作

  1. 点击第二个 API当前激活的"删除"按钮

预期结果

  • 弹出错误提示:"无法删除当前正在使用的 API 配置,请先切换到其他 API"
  • API 未被删除

步骤 6删除非激活的 API

操作

  1. 点击第一个 API未激活的"删除"按钮
  2. 在确认对话框中点击"确定"

预期结果

  • 第一个 API 被删除
  • 只剩下第二个 API
  • 第二个 API 仍然被选中

步骤 7测试模型刷新功能

操作

  1. 点击"添加新 API 配置"
  2. 填写 API 密钥
  3. 点击"刷新"按钮

预期结果

  • 按钮显示加载状态(图标旋转)
  • 显示"加载中..."提示
  • 成功后显示可用模型列表
  • 可以选择模型并应用到输入框

步骤 8保存设置

操作

  1. 滚动到页面底部
  2. 点击"保存更改"按钮

预期结果

  • 显示"设置已保存"提示
  • 刷新页面后,配置仍然存在
  • 激活的 API 保持选中状态

步骤 9测试 AI 摘要生成

操作

  1. 前往任意文章页面
  2. 查看是否显示 AI 摘要

预期结果

  • 使用当前激活的 API 配置生成摘要
  • 摘要正常显示

边界情况测试

测试 1空配置名称

  • 不填写配置名称,直接点击保存
  • 预期:弹出提示"请输入配置名称"

测试 2空 API 密钥

  • 只填写配置名称,不填写 API 密钥
  • 预期:弹出提示"请输入 API 密钥"

测试 3刷新模型时未填写密钥

  • 不填写 API 密钥,直接点击刷新
  • 预期:弹出提示"请先输入 API 密钥"

测试 4删除最后一个 API

  • 当只剩一个 API 时,尝试删除
  • 预期:如果是激活的,无法删除;如果不是激活的,可以删除

测试 5切换服务商

  • 切换到不同的 AI 服务商(如 DeepSeek
  • 预期:显示该服务商的 API 配置列表

测试 6向后兼容性测试

  • 如果之前有旧的单 API 配置
  • 预期:自动迁移为"默认配置"并设置为激活

功能验证清单

  • 添加第一个 API 配置
  • 添加第二个 API 配置
  • 切换激活的 API
  • 编辑 API 配置
  • 尝试删除激活的 API应失败
  • 删除非激活的 API
  • 刷新模型列表
  • 从模型列表选择并应用模型
  • 保存设置并刷新页面
  • 验证数据持久化
  • 测试空配置名称
  • 测试空 API 密钥
  • 测试切换服务商
  • 测试 AI 摘要生成功能
  • 测试向后兼容性

已知问题

修复记录

2026-01-26

  • 修复删除功能:添加激活状态检查,防止删除当前使用的 API
  • 修复保存逻辑:编辑时正确保留激活状态
  • 优化体验:添加第一个 API 时自动设置为激活
  • 添加模型刷新功能:支持动态获取可用模型列表
  • 修复配置获取的错误处理:防止空配置导致 Fatal Error
  • 改进向后兼容性:自动迁移旧配置到新格式

使用场景

场景 1负载均衡

  • 配置多个 OpenAI API Key
  • 手动切换使用不同的 Key
  • 避免单个 Key 达到速率限制

场景 2备用切换

  • 主 API 配置官方端点
  • 备用 API 配置代理端点
  • 主 API 失败时手动切换到备用

场景 3不同场景使用不同配置

  • API 1使用 gpt-4o-mini快速、便宜
  • API 2使用 gpt-4o准确、贵
  • 根据需求切换不同的 API

场景 4测试与生产分离

  • API 1测试环境配置
  • API 2生产环境配置
  • 方便切换测试