"""快速测试DC API""" import requests import json print("=" * 60) print("DC工具C - Python微服务快速测试") print("=" * 60) # 测试1: 代码验证(正常代码) print("\n【测试1】代码验证 - 正常代码") try: r = requests.post("http://localhost:8000/api/dc/validate", json={"code": "df['x'] = 1"}, timeout=5) print(f" 状态码: {r.status_code}") if r.status_code == 200: result = r.json() print(f" valid={result['valid']}, errors={result['errors']}, warnings={result['warnings']}") print(f" ✅ 测试1通过") else: print(f" ❌ 测试1失败: {r.text}") except Exception as e: print(f" ❌ 测试1异常: {e}") # 测试2: 代码验证(危险代码) print("\n【测试2】代码验证 - 危险代码(应被拦截)") try: r = requests.post("http://localhost:8000/api/dc/validate", json={"code": "import os"}, timeout=5) print(f" 状态码: {r.status_code}") if r.status_code == 200: result = r.json() print(f" valid={result['valid']}, errors数量={len(result.get('errors',[]))}") if not result['valid'] and len(result.get('errors',[])) > 0: print(f" ✅ 测试2通过(危险代码被拦截)") else: print(f" ❌ 测试2失败(危险代码未被拦截)") else: print(f" ❌ 测试2失败: {r.text}") except Exception as e: print(f" ❌ 测试2异常: {e}") # 测试3: 代码执行 print("\n【测试3】代码执行 - 简单Pandas操作") try: data = [{"age": 25}, {"age": 65}, {"age": 45}] code = "df['old'] = df['age'] > 60" r = requests.post("http://localhost:8000/api/dc/execute", json={"data": data, "code": code}, timeout=10) print(f" 状态码: {r.status_code}") if r.status_code == 200: result = r.json() print(f" success={result.get('success')}, 执行时间={result.get('execution_time',0):.3f}秒") if result.get('success'): print(f" 结果数据: {result['result_data']}") print(f" ✅ 测试3通过(代码成功执行)") else: print(f" ❌ 测试3失败: {result.get('error')}") else: print(f" ❌ 测试3失败: {r.text}") except Exception as e: print(f" ❌ 测试3异常: {e}") print("\n" + "=" * 60) print("🎉 Day 1 Python服务测试完成!") print("=" * 60)