12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- import requests
- import json
- def test_create_goal_response():
- """
- 测试创建目标API的响应格式
- """
- print("=== 测试创建目标API的响应格式 ===")
-
- # 创建目标的测试数据
- goal_data = {
- "userId": 1,
- "subject": "数学",
- "goalType": "选择题",
- "goalContent": "测试目标内容",
- "difficulty": "简单",
- "totalQuantity": 5,
- "estimatedTime": 30
- }
-
- print(f"创建目标请求数据: {json.dumps(goal_data, indent=2, ensure_ascii=False)}")
-
- try:
- # 调用创建目标API
- response = requests.post(
- "http://localhost:8080/api/goals",
- json=goal_data,
- timeout=10
- )
-
- print(f"响应状态码: {response.status_code}")
-
- if response.status_code == 200:
- result = response.json()
- print(f"完整响应: {json.dumps(result, ensure_ascii=False, indent=2)}")
-
- # 检查响应结构
- print("\n=== 响应结构分析 ===")
- print(f"响应码: {result.get('code')}")
- print(f"消息: {result.get('message')}")
- print(f"时间戳: {result.get('timestamp')}")
-
- if 'data' in result:
- data = result['data']
- print(f"data字段存在: {type(data)}")
- if isinstance(data, dict):
- print(f"goalId在data中: {data.get('goalId')}")
- print(f"userId在data中: {data.get('userId')}")
- print(f"subject在data中: {data.get('subject')}")
- else:
- print(f"data不是字典类型: {data}")
- else:
- print("data字段不存在")
-
- # 检查Android应用期望的字段
- print("\n=== Android应用期望的字段 ===")
- print(f"直接的goalId字段: {result.get('goalId')}")
-
- # 如果有goalId,测试用这个goalId调用Coze API
- if 'data' in result and isinstance(result['data'], dict) and 'goalId' in result['data']:
- goal_id = result['data']['goalId']
- print(f"\n=== 使用正确的goalId({goal_id})测试Coze API ===")
-
- coze_data = {
- "userId": 1,
- "goalId": goal_id,
- "subject": "数学",
- "knowledgePoint": "测试正确goalId",
- "difficulty": "简单",
- "type": "选择题",
- "totalQuantity": 1
- }
-
- coze_response = requests.post(
- "http://localhost:8080/api/coze/generate-questions",
- json=coze_data,
- timeout=30
- )
-
- if coze_response.status_code == 200:
- coze_result = coze_response.json()
- print(f"Coze API响应: {json.dumps(coze_result, ensure_ascii=False, indent=2)}")
-
- if coze_result.get('success') and coze_result.get('questions'):
- for question in coze_result['questions']:
- print(f"生成的题目goalId: {question.get('goalId')}")
- else:
- print(f"Coze API调用失败: {coze_response.status_code}")
-
- else:
- print(f"创建目标失败: {response.text}")
-
- except Exception as e:
- print(f"请求异常: {e}")
- if __name__ == "__main__":
- test_create_goal_response()
|