议题4,王正意 下一代自动化测试:AI赋能

Razor

2019/07/04 发布于 技术 分类

安卓绿色联盟 

文字内容
1. 安卓绿色联盟·第17期技术沙龙 探寻百度AI3.0背后的技术实践 北京场 2018/7/28
2. 安卓绿色联盟公众号 现场交流群
3. 下一代自动化测试: AI赋能 王正意 百度地图资深测试工程师 3
4. 王正意 百度地图质量部资深测试工程师 百度地图质量部技术委员会主席 百度搜索公司移动测试领域专家 安卓绿色联盟功耗标准组负责人 百度近十年客户 端/移动端软件/ 应用测试经验 在百度地图负责移动端自 动化、持续集成、持续交 付、性能测试等技术工作
5. 我们的自动化测试, 到底有多么自动化?
6. 历史上的自动化测试 QTP Selenium Watir Robot Framework Sikuli Monkey Runner Robotium UIAutomator XCUITest Appium 其实,它们都是需要工程师 「手把手」使用的自动化工具/框架
7. 将自动化测试抽象
8. 重新定义自动化测试 自动测试级 别 名称 描述性定义 测试操作的执 预设验证的 测试意图的 未知问题的 行者 校验者 构思者 发现者 覆盖场景 人类工程师构思测试意图 L0 人工测试 由人类测试工程师全权操作行使测试过程 工程师 工程师 工程师 工程师 N/A L1 辅助测试 由人类预定义部分或全部测试意图,机器辅助完成部 分操作及验证,其他操作及验证需要人类测试工程师 进行操作 工程师 +系统 工程师 +系统 工程师 工程师 部分 L2 半自动测试 由人类预定义部分或全部测试意图,完成全部操作及 验证 系统 系统 工程师 工程师 部分 机器自动构思测试意图 L3 特定条件自动测试 在特定条件下,机器以模仿人类行为的形式,自动构 思测试意图、完成全部操作及预设验证,并初步具备 未知问题的发现能力 系统 系统 系统 工程师 +系统 部分 L4 超高度自动测试 在大部分场景下,机器以理解被测对象的形式,自动 构思测试意图、完成全部操作及预设验证,并具备较 强的未知问题的发现能力 系统 系统 系统 系统 部分 L5 全自动测试 在全部场景下,机器均可自动构思测试意图、完成全 部操作及预设验证,并能够代替人类工程师进行测试 系统 系统 系统 系统 全部 自动化测试分级标准 参考SAE《自动驾驶分级标准》
9. L3: 特定条件自动测试 关键词:模仿
10. L3: 特定条件自动测试 测试过程被动 行为信息收集 行为意图挖掘 用例生成、 执行、校验 路径选择策略
11. L3: 行为信息收集 在线下测试阶段和公司 内部测试阶段,将测试 者的操作行为信息回收 • 仅收集内部员工的操 作行为信息,且均在 用户知情并同意情况 下进行 • 收集的信息中仅包括 页面操作行为,不涉 及任何隐私信息 • 数据分析仅在用户群 整体层面进行,不针 对任何特定个人 • 行为信息数据仅作内 部分析使用,不会提 供给第三方 SDK 行为信息 HOOK 页面聚类 六类主要事件 常规Button点击 物理按键 操作聚类 ListView滑动 ListView点击 RadioGroup选中 CheckBox等
12. L3: 行为意图挖掘 标准化采集 操作 a … • 格式规范化 操作 e 操作 a … 操作 a 操作 c 操作 b 操作 a 还原行为链 … • 按设备分组 • 按序列分组 • 按时间排序 意图挖掘 • 白名单过滤 • 误点过滤 • 回环过滤 操作 a 操作 a 操作 a … 操作 c 操作 b 操作 a … 操作 a … 小于2s … 页面B 操作 b 操作 a ❌ ❌ 页面A 操作 c 页面 B 页面C 停留页面时长小于T … 操作 c 操作 a … …
13. L3: 路径选择策略 行为信息收集 行为意图挖掘 (去噪) APP首页 训练 路径选择模型 输入 (LSTM/RNN/MM) 预测下一跳X 根据转移矩阵 执行对应操作 进入页面XN 输入 否 进入页面X 是否随机游走 是 向前/向后 随机操作N阶
14. L3: 用例生成、执行与校验 行为信息收集 • 行为对象 • 事件类型 自动化脚本映射 • Appium 多机同步执行 在从机上复制主机操作 控件校验 基于坐标同步 图像匹配同步 支持双端相互同步 视觉校验 • 基于增强学习 的遍历工具 • 控件映射校验 集 • 控件切图校验 集 • 图像识别对比 能力
15. L3: 发现未知问题 预检查 模型预测 页面内容检查 常见错误词表 纯色检查 Bug分析 整体 UICheck回收 留白、错位模型 标准数据集 (指纹唯一) 物料预处理 控件分割 局部 字符控件 遮挡、背 景异常过 度模型 DOM解析 OpenCV 轮廓检测 图片 显示 异常 模型 键盘 显示 异常 模型 OCR 识别定位 UICheck:用历史BUG来训练判断界面异常问题 样本扩充 PIL / OpenCV / keras 模型生产&迭代
16. L4: 高度自动测试 关键词:理解
17. L4: 高度自动测试 图像 识别 目标 检测 根据页面元素特征 识别对象及作用 认知 模型 UI-Bug 历史 数据 当前页面跟之前的 特征有什么不同 判断 模型 遍历 模型 全局 模型 应用的全局树,如 何最快最高效遍历 操控 能力 听说 能力 基本操作引擎(手、口、耳) 识别 驱动 模型 通向L4:路径与规划 自行探 索建立 认知 自我进 化
18. THANKS FOR YOUR LISTENING
19. Q&A