Some checks failed
AI Web Tester CI / test (push) Has been cancelled
主要改进: - 新增统一测试器 (universal_tester.py) 支持多种测试模式 - 优化测试报告生成器,支持汇总报告和操作截图 - 增强探索器 DFS 算法和状态指纹识别 - 新增智能测试配置 (smart_test.yaml) - 改进 AI 模型集成 (GLM/Gemini 支持) - 添加开发调试工具和文档
94 lines
2.9 KiB
Python
94 lines
2.9 KiB
Python
"""
|
|
增强的测试策略建议
|
|
"""
|
|
|
|
# 1. 基于用户旅程的测试策略
|
|
USER_JOURNEY_STRATEGIES = {
|
|
"电商网站": {
|
|
"priority_flow": ["首页", "搜索", "商品详情", "加入购物车", "结算"],
|
|
"critical_elements": ["价格", "库存", "购买按钮", "支付"],
|
|
"avoid_elements": ["清空购物车", "取消订单"]
|
|
},
|
|
"企业管理系统": {
|
|
"priority_flow": ["登录", "仪表盘", "数据列表", "详情", "操作"],
|
|
"critical_elements": ["数据导出", "审批", "提交"],
|
|
"avoid_elements": ["删除", "重置", "批量操作"]
|
|
},
|
|
"社交平台": {
|
|
"priority_flow": ["浏览", "互动", "发布", "个人中心"],
|
|
"critical_elements": ["发布按钮", "评论", "点赞"],
|
|
"avoid_elements": ["注销", "屏蔽", "举报"]
|
|
}
|
|
}
|
|
|
|
# 2. 动态优先级调整策略
|
|
DYNAMIC_PRIORITY_RULES = {
|
|
# 页面类型识别
|
|
"page_type_detection": {
|
|
"login_page": ["password", "username", "login", "signin"],
|
|
"search_page": ["search", "filter", "sort", "pagination"],
|
|
"form_page": ["input", "textarea", "select", "submit"],
|
|
"dashboard": ["chart", "widget", "summary", "report"]
|
|
},
|
|
# 时间敏感操作
|
|
"time_sensitive": {
|
|
"high_priority": ["限时优惠", "即将到期", "紧急任务"],
|
|
"low_priority": ["历史记录", "归档", "统计"]
|
|
}
|
|
}
|
|
|
|
# 3. 错误恢复策略
|
|
ERROR_RECOVERY_STRATEGIES = {
|
|
"element_not_found": [
|
|
"尝试模糊匹配",
|
|
"使用备用选择器",
|
|
"滚动页面后重试",
|
|
"使用坐标定位"
|
|
],
|
|
"action_failed": [
|
|
"等待页面加载",
|
|
"检查弹窗遮挡",
|
|
"验证元素状态",
|
|
"刷新页面重试"
|
|
],
|
|
"navigation_stuck": [
|
|
"返回上一页",
|
|
"使用面包屑导航",
|
|
"通过菜单导航",
|
|
"直接URL跳转"
|
|
]
|
|
}
|
|
|
|
# 4. 测试覆盖策略
|
|
COVERAGE_STRATEGIES = {
|
|
"功能覆盖": {
|
|
"核心路径": "必须100%覆盖",
|
|
"次要功能": "采样测试",
|
|
"边缘功能": "异常情况测试"
|
|
},
|
|
"数据覆盖": {
|
|
"正常数据": "标准测试数据",
|
|
"边界数据": "最大值、最小值、空值",
|
|
"异常数据": "特殊字符、超长数据"
|
|
},
|
|
"环境覆盖": {
|
|
"浏览器": "Chrome、Firefox、Safari",
|
|
"分辨率": "桌面、平板、手机",
|
|
"网络": "快速、慢速、离线"
|
|
}
|
|
}
|
|
|
|
# 5. 智能学习策略
|
|
LEARNING_STRATEGIES = {
|
|
"元素识别学习": {
|
|
"成功模式": "记录有效的选择器模式",
|
|
"失败模式": "避免无效的定位方式",
|
|
"网站适配": "针对特定网站优化"
|
|
},
|
|
"流程优化": {
|
|
"路径分析": "找出最高效的操作路径",
|
|
"时间优化": "减少不必要的等待",
|
|
"错误预防": "避免已知的错误操作"
|
|
}
|
|
}
|