feat(base_page): 新增BasePage基础操作

- 优化 is_visible,支持快速状态检查。
- 新增 log_screenshot/log_screenshot_bytes 截图。
- 更新 README.md。
- 其他优化。
This commit is contained in:
2026-01-30 18:06:15 +08:00
parent d3f9326baa
commit fd6f4fbcbe
9 changed files with 288 additions and 27 deletions

View File

@@ -5,7 +5,6 @@ from typing import Union, Callable
from core.custom_expected_conditions import get_condition
logger = logging.getLogger(__name__)
@@ -36,4 +35,20 @@ def resolve_wait_method(func):
return func(self, method, *args, **kwargs)
return wrapper
return wrapper
def exception_capture(func):
"""
仅在原子动作失败时,触发 BasePage 层的业务截图逻辑
"""
@wraps(func)
def wrapper(self, *args, **kwargs):
try:
return func(self, *args, **kwargs)
except Exception as e:
# 自动捕获:调用 BasePage 层的 log_screenshot
if hasattr(self, "log_screenshot"):
self.log_screenshot(f"自动异常捕获{func.__name__}")
raise e
return wrapper