refactor: 重构执行引擎为上下文驱动架构
- 优化 WorkflowExecutor 与 Exchange支持 ExecutionEnv 资源注入。 - 实现 Session 级别连接复用与变量池内存镜像化,消除重复 I/O 开销。 - 引入 ChainMap 实现动态上下文切换,解决参数化变量与全局提取变量的优先级覆盖。 - 完善变量提取与断言逻辑,确保跨用例变量流转的可靠性。
This commit is contained in:
@@ -2,7 +2,7 @@ feature: 页面状态
|
||||
story: 状态
|
||||
title: 查询状态信息
|
||||
epic: 的点点滴滴
|
||||
request:
|
||||
action:
|
||||
method: get
|
||||
url: /answer/api/v1/connector/info
|
||||
headers:
|
||||
|
||||
30
test_cases/test_collector.py
Normal file
30
test_cases/test_collector.py
Normal file
@@ -0,0 +1,30 @@
|
||||
#!/usr/bin/env python
|
||||
# coding=utf-8
|
||||
|
||||
import logging
|
||||
from core import settings
|
||||
from core.creator import CaseGenerator, TestTemplateBase
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class TestRunner(TestTemplateBase):
|
||||
"""
|
||||
测试用例的动态容器 (Test Case Container)。
|
||||
这是一个占位符类,CaseGenerator 会扫描所有的 YAML 用例文件,
|
||||
然后将每一个用例动态地生成为一个测试方法并挂载到这个类上。
|
||||
Pytest 最终会发现并执行这些动态挂载的 test_* 方法。
|
||||
"""
|
||||
pass
|
||||
|
||||
|
||||
try:
|
||||
# --- 核心逻辑:动态生成测试用例 ---
|
||||
# 当 Pytest 在“收集测试用例”阶段加载此模块时,下面的代码会立即执行。
|
||||
logger.info("--- [Collector] 开始扫描并动态生成测试用例 ---")
|
||||
CaseGenerator.build_and_register(target_cls=TestRunner, cases_dir=settings.TEST_CASE_DIR)
|
||||
logger.info(f"--- [Collector] 测试用例生成完毕,已成功加载到 {TestRunner.__name__} ---")
|
||||
except Exception as e:
|
||||
logger.critical(f"--- [Collector] 动态生成测试用例时发生致命错误,测试执行中止 ---", exc_info=True)
|
||||
# 抛出异常,让 pytest 捕获并报告为收集错误 (Collection Error)
|
||||
raise RuntimeError("测试用例收集失败,请检查日志中的详细错误信息。") from e
|
||||
Reference in New Issue
Block a user