run_section_1_2_live.py 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. #!/usr/bin/env python3
  2. """
  3. 仅跑 Swagger 模块 1 + 模块 2 全部真实联调。
  4. 用法(先 pnpm dev):
  5. cd backend/tests_python
  6. python run_section_1_2_live.py
  7. """
  8. from __future__ import annotations
  9. import subprocess
  10. import sys
  11. from pathlib import Path
  12. from load_env import load_backend_env
  13. ROOT = Path(__file__).resolve().parent
  14. def main() -> int:
  15. env = load_backend_env()
  16. print("=" * 60)
  17. print("Swagger 模块 1+2 全部真实联调")
  18. print("=" * 60)
  19. print(f" QIWEI_TOKEN: {'已配置' if env.get('QIWEI_TOKEN') else '未配置'}")
  20. print(f" QIWEI_GUID: {env.get('QIWEI_GUID', '未配置')}")
  21. rooms = [x.strip() for x in env.get("QIWEI_ROOM_IDS", "").split(",") if x.strip()]
  22. print(f" QIWEI_ROOM_IDS: {len(rooms)} 个群")
  23. print("=" * 60)
  24. if not env.get("QIWEI_GUID", "").strip():
  25. print("请配置 backend/.env 中的 QIWEI_GUID")
  26. return 1
  27. cmd = [
  28. sys.executable,
  29. "-m",
  30. "pytest",
  31. "test_01_02_module_live.py",
  32. "-v",
  33. "--html=report_section_1_2.html",
  34. "--self-contained-html",
  35. ]
  36. rc = subprocess.run(cmd, cwd=ROOT).returncode
  37. print()
  38. if rc == 0:
  39. print(f"模块 1+2 全部通过。报告: {ROOT / 'report_section_1_2.html'}")
  40. else:
  41. print(f"存在失败,报告: {ROOT / 'report_section_1_2.html'}")
  42. return rc
  43. if __name__ == "__main__":
  44. raise SystemExit(main())