1
This commit is contained in:
47
scripts/ops/_run_ai_tests_remaining.py
Normal file
47
scripts/ops/_run_ai_tests_remaining.py
Normal file
@@ -0,0 +1,47 @@
|
||||
"""批量运行剩余 AI 测试文件,收集结果汇总。"""
|
||||
import subprocess
|
||||
import sys
|
||||
import time
|
||||
|
||||
TEST_FILES = [
|
||||
"apps/backend/tests/test_ai_cache.py",
|
||||
"apps/backend/tests/test_ai_chat.py",
|
||||
"apps/backend/tests/test_ai_app2.py",
|
||||
"apps/backend/tests/test_ai_apps_prompt.py",
|
||||
"apps/backend/tests/test_ai_clue_writer.py",
|
||||
"apps/backend/tests/test_ai_dispatcher.py",
|
||||
"tests/test_p5_ai_integration_properties.py",
|
||||
]
|
||||
|
||||
TIMEOUT = 300 # 5 分钟每个文件
|
||||
|
||||
results = []
|
||||
for f in TEST_FILES:
|
||||
print(f"\n{'='*60}")
|
||||
print(f"Running: {f}")
|
||||
print(f"{'='*60}", flush=True)
|
||||
start = time.time()
|
||||
try:
|
||||
proc = subprocess.run(
|
||||
[sys.executable, "-m", "pytest", f, "-v", "--tb=short", "-x"],
|
||||
timeout=TIMEOUT,
|
||||
)
|
||||
elapsed = time.time() - start
|
||||
results.append((f, proc.returncode, f"{elapsed:.1f}s"))
|
||||
except subprocess.TimeoutExpired:
|
||||
elapsed = time.time() - start
|
||||
results.append((f, "TIMEOUT", f"{elapsed:.1f}s"))
|
||||
print(f" >>> TIMEOUT after {elapsed:.1f}s")
|
||||
except Exception as e:
|
||||
elapsed = time.time() - start
|
||||
results.append((f, f"ERROR: {e}", f"{elapsed:.1f}s"))
|
||||
|
||||
print(f"\n\n{'='*60}")
|
||||
print("SUMMARY")
|
||||
print(f"{'='*60}")
|
||||
print(f"{'File':<55} {'Result':<10} {'Time'}")
|
||||
print("-" * 80)
|
||||
for f, rc, t in results:
|
||||
short = f.split("/")[-1]
|
||||
status = "PASS" if rc == 0 else ("TIMEOUT" if rc == "TIMEOUT" else f"FAIL(rc={rc})")
|
||||
print(f"{short:<55} {status:<10} {t}")
|
||||
Reference in New Issue
Block a user