import csv from datetime import datetime today = datetime.now().strftime('%Y%m%d') filename = f'搜索服务接口性能测试_{today}.csv' print("="*100) print("搜索服务接口性能测试结果") print("="*100) try: with open(filename, 'r', encoding='utf-8-sig') as f: reader = csv.DictReader(f) rows = list(reader) print(f"\n{'接口':<55} {'方法':<8} {'状态码':<10} {'耗时(ms)':<12} {'成功':<8}") print("-"*100) for row in rows: endpoint = row['endpoint'][:53] method = row['method'] status = row['status_code'] time_ms = row['elapsed_time_ms'] success = '✓' if row['success'] == 'True' else '✗' print(f"{endpoint:<55} {method:<8} {status:<10} {time_ms:<12} {success:<8}") print("-"*100) # 统计 times = [float(r['elapsed_time_ms']) for r in rows if r['elapsed_time_ms'] != '0'] if times: print(f"\n平均耗时: {sum(times)/len(times):.2f}ms") print(f"最大耗时: {max(times):.2f}ms") print(f"最小耗时: {min(times):.2f}ms") success_count = sum(1 for r in rows if r['success'] == 'True') success_rate = success_count / len(rows) * 100 if rows else 0 print(f"\n成功率: {success_rate:.1f}%") if success_rate == 100: print("服务健康: ✓ 所有接口正常运行") elif success_rate >= 80: print("服务健康: ⚠ 大部分接口正常,部分接口异常") else: print("服务健康: ✗ 多个接口异常,需要检查") except FileNotFoundError: print(f"\n✗ 未找到文件: {filename}") print("请先运行: python 测试搜索服务接口性能.py") print("\n提示: 请确保搜索服务已启动在 http://127.0.0.1:8321")