新增优化历史模块

This commit is contained in:
rjb
2025-10-10 23:39:54 +08:00
parent 1fba655620
commit 960a341117
56 changed files with 13344 additions and 8 deletions

198
test_integration.py Normal file
View File

@@ -0,0 +1,198 @@
#!/usr/bin/env python3
"""
测试优化历史与生成页面的集成功能
"""
import requests
import json
import time
BASE_URL = "http://localhost:5002"
def test_add_optimization_history():
"""测试添加优化历史记录"""
print("🧪 测试添加优化历史记录...")
test_data = {
"original_text": "请帮我写一个产品介绍",
"optimized_text": "以下是专业的产品介绍模板:\n\n【产品概述】\n产品名称AI智能助手\n核心功能:智能对话、任务管理、数据分析\n目标用户:企业用户、个人用户\n\n【产品特色】\n1. 智能对话:自然语言处理,理解用户意图\n2. 任务管理:自动规划,提高工作效率\n3. 数据分析:深度洞察,支持决策制定",
"optimization_type": "产品文案",
"industry": "科技",
"profession": "产品经理",
"tags": ["自动生成", "产品文案"]
}
try:
response = requests.post(
f"{BASE_URL}/api/optimization-history",
json=test_data,
headers={'Content-Type': 'application/json'}
)
print(f" 状态码: {response.status_code}")
if response.status_code == 200:
result = response.json()
if result.get('success'):
print(f" ✅ 成功: {result.get('message')}")
print(f" 📝 记录ID: {result.get('data', {}).get('id')}")
return True
else:
print(f" ❌ 失败: {result.get('message')}")
return False
else:
print(f" ❌ HTTP错误: {response.status_code}")
print(f" 响应内容: {response.text[:200]}")
return False
except Exception as e:
print(f" ❌ 请求失败: {str(e)}")
return False
def test_get_optimization_history():
"""测试获取优化历史记录"""
print("\n🧪 测试获取优化历史记录...")
try:
response = requests.get(f"{BASE_URL}/api/optimization-history")
print(f" 状态码: {response.status_code}")
if response.status_code == 200:
result = response.json()
if result.get('success'):
history = result.get('data', {}).get('history', [])
print(f" ✅ 成功: 获取到 {len(history)} 条记录")
# 显示最新的几条记录
for i, record in enumerate(history[:3]):
print(f" 📝 记录 {i+1}: {record.get('original_text', '')[:30]}...")
return True
else:
print(f" ❌ 失败: {result.get('message')}")
return False
else:
print(f" ❌ HTTP错误: {response.status_code}")
return False
except Exception as e:
print(f" ❌ 请求失败: {str(e)}")
return False
def test_generate_page_integration():
"""测试生成页面集成"""
print("\n🧪 测试生成页面集成...")
try:
# 测试生成页面访问
response = requests.get(f"{BASE_URL}/")
if response.status_code == 200:
print(" ✅ 生成页面访问正常")
# 检查页面是否包含优化历史相关的JavaScript代码
content = response.text
if 'addToOptimizationHistory' in content:
print(" ✅ 包含优化历史集成代码")
else:
print(" ❌ 缺少优化历史集成代码")
return False
if 'checkPendingHistory' in content:
print(" ✅ 包含待保存历史检查代码")
else:
print(" ❌ 缺少待保存历史检查代码")
return False
return True
else:
print(f" ❌ 生成页面访问失败: {response.status_code}")
return False
except Exception as e:
print(f" ❌ 请求失败: {str(e)}")
return False
def test_optimization_history_page():
"""测试优化历史页面"""
print("\n🧪 测试优化历史页面...")
try:
response = requests.get(f"{BASE_URL}/optimization-history")
if response.status_code == 200:
print(" ✅ 优化历史页面访问正常")
# 检查页面内容
content = response.text
if 'optimization_history.html' in content or '优化历史' in content:
print(" ✅ 页面内容正常")
return True
else:
print(" ❌ 页面内容异常")
return False
else:
print(f" ❌ 优化历史页面访问失败: {response.status_code}")
return False
except Exception as e:
print(f" ❌ 请求失败: {str(e)}")
return False
def main():
"""主测试函数"""
print("🚀 优化历史集成功能测试")
print("=" * 50)
# 等待服务器启动
print("⏳ 等待服务器启动...")
time.sleep(3)
tests = [
("生成页面集成", test_generate_page_integration),
("优化历史页面", test_optimization_history_page),
("添加历史记录", test_add_optimization_history),
("获取历史记录", test_get_optimization_history)
]
results = []
for test_name, test_func in tests:
try:
result = test_func()
results.append((test_name, result))
except Exception as e:
print(f"❌ 测试 {test_name} 异常: {str(e)}")
results.append((test_name, False))
# 输出测试结果
print("\n" + "=" * 50)
print("📊 测试结果汇总")
print("=" * 50)
passed = 0
total = len(results)
for test_name, result in results:
status = "✅ 通过" if result else "❌ 失败"
print(f"{test_name}: {status}")
if result:
passed += 1
print(f"\n📈 总体结果: {passed}/{total} 测试通过")
if passed == total:
print("🎉 所有测试通过!优化历史集成功能正常!")
print("\n💡 现在您可以:")
print(" 1. 在生成页面生成提示词")
print(" 2. 系统会自动保存到优化历史")
print(" 3. 在优化历史页面查看所有记录")
else:
print("⚠️ 部分测试失败,请检查相关功能")
return passed == total
if __name__ == '__main__':
success = main()
exit(0 if success else 1)