LPC/test_feedback_feature.py

69 lines
2.3 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import requests
import json
# 测试服务器地址
BASE_URL = "http://127.0.0.1:5000"
def test_feedback_feature():
print("=== 测试请求反馈功能 ===")
# 1. 开始面试
print("\n1. 开始面试...")
start_data = {
"job_position": "前端开发工程师",
"difficulty": "intermediate"
}
start_response = requests.post(f"{BASE_URL}/api/interview/start", json=start_data)
if start_response.status_code != 200:
print(f"开始面试失败:{start_response.json().get('error')}")
return False
start_result = start_response.json()
interview_id = start_result.get("interview_id")
first_question = start_result.get("question")
print(f"面试ID: {interview_id}")
print(f"第一个问题: {first_question}")
# 2. 回答问题并请求反馈
print("\n2. 回答问题并请求反馈...")
answer_data = {
"interview_id": interview_id,
"answer": "我有3年的前端开发经验主要使用React框架熟悉JavaScript、HTML、CSS等技术。",
"request_feedback": True
}
print(f"发送的请求数据:{json.dumps(answer_data)}")
answer_response = requests.post(f"{BASE_URL}/api/interview/answer", json=answer_data)
if answer_response.status_code != 200:
print(f"提交回答失败:{answer_response.json().get('error')}")
return False
answer_result = answer_response.json()
print(f"反馈请求成功")
print(f"是否结束: {answer_result.get('ended')}")
if answer_result.get('feedback'):
print(f"\n3. 收到反馈:")
print(answer_result['feedback'])
# 验证反馈是否包含改进建议
if '改进建议' in answer_result['feedback'] or '建议' in answer_result['feedback']:
print("\n✅ 反馈中包含改进建议")
else:
print("\n❌ 反馈中未包含明确的改进建议")
return True
else:
print(f"\n❌ 未收到反馈")
return False
if __name__ == "__main__":
success = test_feedback_feature()
if success:
print("\n=== 测试通过!请求反馈功能正常工作 ===")
else:
print("\n=== 测试失败!请求反馈功能存在问题 ===")