移动端录制回放实践
如果无法正常显示,请先停止浏览器的去广告插件。
1.
2.
3. SaaS 云真机管理 录制回放工具 用例管理 测试任务
PaaS 云真机服务 框架 / sdk 脚本服务 测试服务
音视频 应用管理/
安装 Appium 性能/日志
采集 组合/复用 共享 任务调度 任务管理
设备操作 辅助操作 图像 chromedp 版本控制 参数化 可重试 可定位
idb Docker
Android
IaaS
视频流(H264)
音频流
app_process
iOS
Docker
视频流(H264)
Wda / dylib
4.
5. Front
Proxy
Actions
Result
Steps
Json
解
释
器
Client
执
行
引
擎
agentIp:5037
adb-server
serialNum
Steps: ocr、图像、上传相册、性能采集
Source
Json
Script
执
行
引
擎
Script
A
G
E
N
T
agentIp:wdaLocalPort
iproxy
6. 操作步骤
功能类步骤
自定义步骤
关键字
输入类型步骤
7. app_process
要求
•
• 采集的所有性能数据为:cpu、memory、fps、network
无侵入 (监控sdk)
• 开发环境: java + ddmlib
• 测试电脑:MacBook Pro (Retina, 15-inch, Mid 2015) 上进行测试
• 测试设备:OPPO R17/Android 8.0
• 采集频率高,数据延迟低 (shell)
• 性能开销低
instruments
• https://github.com/troybowman/dtxmsg/blob/master/slides.pdf
• https://github.com/alibaba/taobao-iphone-device
8. • 无侵入、低延迟、开销低
• 与 shell 同权
• 能够通过 systemservice 采集到各类信息
• 无需安装,无需运维
9. ➢ Android: scrcpy
➢ iOS: ffmpeg
10.
11. 条件 selector
动作 target
Android
iOS
➢ 按需配置 ➢ 稳定性考虑
➢ 运行时注册 ➢ 弹窗类型不多
➢ 运维方便 ➢ 按需触发
12. ➢ 获取 sourceTree 延迟高,部分场景 120s+
➢ 点击慢
➢ 控件类型少,属性少
13.
14. ➢ 健壮性高:可以获取到所有的 UIView 类型 ➢ 兼容性问题导致维护成本高(app 类型多)
➢ 速度快:/source(20ms以内),点击(10ms)以内 ➢ Sdk 技术栈导致研发成本高
➢ 可以实现更多功能:崩溃拦截、dump trace ➢ 不能接入加固类型的sdk,不能做 hook 检测
15. •
兼容性差:ChromeDriver版本需要匹配
对应Android系统和内核版本
•
查找匹配的版本非常慢:版本匹配在很
多机型上失效
• 需要管理维护所有的版本
16. Webdriver
• /wd/hub/status
• /wd/hub/session
• /wd/hub/session/{sessionId}/source
• /wd/hub/session/{sessionId}/execute
• /wd/hub/session/{sessionId}/element
Domain
•
Page(管理页面状态,如跳转、重载、页面加载过程中各
事的件回调)
• DOM(管理页面节点,可用于元素查找)
• Runtime(管理Javascript运行时,可以进行js注入和异常监
听)
• Network(管理网络通讯,可监控所有的页面请求)
• Input(管理action输入,如鼠标模拟点击)
优势
• Ui 自动化需要实现的接口并不多
• 大多数的需求不会遇到版本兼容性问题
17.
18. 关于TnGD:Touch 'n Go eWallet (以下简称 TNG eWallet)是马来西亚第一大电子钱包,目前已拥有超过1850
万注册用户,是马来西亚向无现金社会转型的引领者。
EMAS移动测试平台 X TNG eWallet最佳实践
QA团队痛点
作为马来西亚国民级金融类移动应用,任何App质量与体验问题都可能对C端用户造成严重影响。此外,公司业务正处于高
速发展阶段,仅过去一年中TNG eWallet就上线了如支付红包、TNG eWallet Visa 卡、TNG NFC等超过2000个新产品功能。这
也为其质量管理团队工作带来了一系列挑战:
1,产品迭代更新速度快,团队手工测试效率瓶颈凸显,且TNG eWallet 的金融属性更要求移动端测试需要全面完整覆盖保
证无疏漏;
2,手头机型覆盖度不足,难以全面测试出各类兼容性、UI适配等问题,而采购测试手机投入产出比低;
3,疫情下员工远程办公,自有物理真机无法共享使用,团队协同测试效率大幅降低,传统模式难满足当前测试需要。
19. 关于TnGD:Touch 'n Go eWallet (以下简称 TNG eWallet)是马来西亚第一大电子钱包,目前已拥有超过1850
万注册用户,是马来西亚向无现金社会转型的引领者。
客户价值量化
20. EMAS开发者交流群
秦汉(架构师)个人钉钉