1、程序可测性能建设与实践美团到店平台技术部杰到店平台技术部2021年加美团,直致于深耕移动端质量保障体系建设。前负责移动端可测性能的建设与落地。C3-机密件 严禁外传录010203 程序可测性能建设案 实践:票业务程序测试经验04 总结与展望 认识程序可测性C3-机密件 严禁外传录010203 程序可测性能建设案 实践:票业务程序测试经验04 总结与展望 认识程序可测性可测性介绍 程序介绍 程序可测性测试活动简介从测试的本质理解可测性 所有测试都可以视为系统因某个激励产响应,然后对其全检测的过程!#$!#$%&!($)*InputOutput可测性概念从测试的本质理解可测性 所有测试都可以视为系
2、统因某个激励产响应,然后对其全检测的过程%&%(激励可控,响应可观,谓之可测!#$!#$%&!($)*移动端可测性天然很低 移动端测试分析 7DddUI系统&设备应可控性可观性 移动端测试分析8挑战测试领域多,测试场景复杂,依赖各种状态,构造困难,难以覆盖所有情况户可观移动端测试分析9挑战多技术栈,多产品、多态多,链路,多场景多机型,多系统移动端测试分析10多技术栈复杂、多态、多端复 多、多场景、链路 测试案需考虑通性难以提覆盖、效率、深度 测试领域多,测试场景依赖各种状态,构造困难可测性低通&具备扩展能的测试案可动化、覆盖可测性改进测试能基础设施挑战 分析 向 移动端质量保障体系11可测性是
3、切测试活动的基础,其贯穿于测试活动的始终可测性改进通、可扩展的能测试动化测试业务场景以可测性改进为基础通过具备很强扩展性的通能框架融合和动化测试可测性建设标12测试场景可直达内部模块可操纵内部模块可感知(可控性)(可控性)(可观性)提升测试效率和测试深度C3-机密件 严禁外传录010203 程序可测性能建设案 实践:票业务程序测试经验04 总结与展望 认识程序可测性可测性介绍 程序介绍 程序可测性程序介绍14系统微信客户端(宿主应)微信程序微信程序运在微信客户端的“轻应”,依附微信态 不下载安装,完即程序发展15各平台相继推出程序,开放升级基础服务能,态圈逐步扩,程序得到迅速发展第批发布微信程
4、序程序技术架构分析16程序运环境分为渲染层和逻辑层,分别由两个线程管理两个线程间通信及与外部通信均经过宿主应转发不同系统的运环境有所区别受宿主应的限制,增加测试难度C3-机密件 严禁外传录010203 程序可测性能建设案 实践:票业务程序测试经验04 总结与展望 认识程序可测性可测性介绍 程序介绍 程序可测性程序可测性现状分析18对逻辑层测试限制较,测试仍是盒 Airtest AirtestAirtest UI动化框架,适于游戏和App,提供了跨平台的API,包括安装应、模拟输、断等,基于图像识别技术定位UI元素,同时提供了命令和python接,可以很容易地在规模设备集群上运Charles代理
5、 构造复杂场景较困难 Charles是个HTTP代理/反向代理具,使得开发者能够查看HTTP和SSL/HTTPS,包括请求、响应以及HTTP标头(其中包含cookie和缓存信息)19程序专,法迁移DebugPanel DebugPanel通常是研发于测程序逻辑开发的调试具,能测试部分场景 操作较繁琐程序可测性现状分析微信官具Minium 基于开发者具,不适QA常测试minium是程序专动化框架。使minium可以进程序UI动化测试,并进函数的mock,可以直接跳转到程序某个并设置数据,做针对性的全测试开发者具与真机运环境有差异 程序可测性全景标套多端运能够深程序内部进控制,对内部状态进观测的可
6、迁移可测性能,提升测试效率和测试深度20C3-机密件 严禁外传录010203 实践:票业务程序测试经验04 总结与展望 程序可测性能建设案 认识程序可测性基本原理22可测性改造的基本原理是/机向被测对象传递参数/指令,被测对象收到参数进处理(可测性SDK),并将应状态上报/呈现的过程InputOutput 传递参数 处理参数 上报状态整体架构23通信层:与/机通信。通过HTTP/WebSocket接收/机传递的控制指令,并将应状态上报给/机 指令分发层:指令处理与分发。解析通信层接收的控制指令,根据指令类型传递给功能层对应的参数 功能层:提供可测性能。处