"""小程序冒烟测试 — 通过 miniprogram-automator 驱动。 用法: pytest tests/web/mini_program/ -m p0 """ import pytest pytestmark = [pytest.mark.mini_program] class TestMiniProgramSmoke: """小程序启动 + 基础页面验证。""" @pytest.mark.p0 @pytest.mark.smoke def test_mini_program_launches(self, run_mini_action): """验证小程序能正常启动并展示首页。""" result = run_mini_action("smoke") assert result["ok"], f"小程序启动失败: {result.get('message')}" @pytest.mark.p0 @pytest.mark.smoke def test_navigate_to_pages(self, run_mini_action): """验证关键页面可正常导航。""" pages = ["/pages/order/index", "/pages/mine/index"] for p in pages: result = run_mini_action("navigate", page=p) assert result["ok"], f"导航到 {p} 失败: {result.get('message')}" class TestMiniProgramElements: """关键元素验证。""" @pytest.mark.p1 @pytest.mark.parametrize("selector,label", [ pytest.param(".order-entry", "运单入口", id="order_entry"), pytest.param(".mine-tab", "我的tab", id="mine_tab"), ]) def test_key_element_exists(self, run_mini_action, selector, label): """验证关键 UI 元素存在。""" result = run_mini_action("element", element_action="exists", selector=selector) assert result["ok"], f"{label} ({selector}) 不存在: {result.get('message')}"