混合脚本测试解决方案-洪至远

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Android混合脚本测试百度MTC洪至远概览•问题背景•如何解决脚本执行的干扰•如何支持各类场景的脚本测试•如何快速生成脚本为什么需要自动化测试•缩短测试周期•统一标准,避免人为出错•提升测试覆盖率常规的自动化测试场景如何选择测试框架?常用框架比较测试框架RobotiumAppiumUIAutomator优点✓可以进行黑盒测试✓基于插桩机制实现,对非原生应用支持较好✓支持跨平台(Android/iOS)✓针对不同Android版本有不同支持方案,可扩展✓非侵入式机制✓支持跨进程界面获取缺点✓不支持跨进程✓需要对待测APP进行重签名,对加壳的APP重签名后会运行失败✓稳定性不足✓不支持Android4.1以下系统✓对非原生界面支持较差仍然面对的问题•脚本执行容易受到干扰•非Native场景脚本支持较差•脚本编写比较耗时,如何提升效率仍然面对的问题•脚本执行容易受到干扰•非Native场景脚本支持较差•脚本编写比较耗时,如何提升效率脚本测试中有哪些干扰?什么是弹窗干扰进程外弹窗进程内弹窗如何解决弹窗干扰•进程内弹窗可通过脚本逻辑清理掉•UiAutomator支持跨进程操作,可处理进程外弹窗如何发现弹窗弹窗层App层界面栈定位弹窗•从根本解决问题•需要根据系统适配方案一:基于元素方案二:基于文本•方法比较简单•需要适配场景综合考虑后,我们采取了基于文本的方案扩展UIAutomator—清道夫SDK•基于UIAutomator的API进行封装•操作时自动清理弹窗•增加操作重试和记忆功能,保证操作的正常执行•增加自定义截图功能支持点击位置展示•…仍然面对的问题•脚本执行容易受到干扰•非Native场景脚本支持较差•脚本编写比较耗时,如何提升效率问题场景1:WebView问题场景2:游戏问题场景3:PopupWindow可行的解决方案—基于元素•WebView通过参考Appium的原理基于ChromeDriver来进行元素解析•游戏通过嵌入SDK,针对引擎特点反射UI控件元素•PopupWindow通过代码层增加focus操作可行的解决方案—图像识别方案对比稳定性易用性准确性稳定性易用性准确性基于元素的方案基于图像识别的方案图像识别的匹配算法优势速度快算法简单劣势容易受干扰优势精度高抗干扰能力强劣势速度慢模板匹配算法特征点匹配算法简单图形匹配精度不高基于OCR的方案•基于OCR可以提升对文字、字母等简单图形等识别准确率工程化解决方案•整合三种方案(模板算法、特征点算法、OCR)•增加不同分辨率下截图,并自动匹配•限定匹配区域,提高匹配准确度元素识别vs图像识别开发流程便捷支持跨进程识别准确性自身稳定性支持非原生应用支持Android版本广开发流程便捷支持跨进程识别准确性自身稳定性支持非原生应用支持Android版本广基于控件能力标签亲儿子出品擅长原生应用基于图像匹配能力标签通用成熟算法擅长非原生应用控件识别元素和图像识别元素各有优缺点,且互为补充UIAutomator图像识别测试如何结合两种方案•将图像识别能力迁移至手机端(可能会影响测试)•将UIAutomator迁移至PC端(有成熟解决方案)混合脚本测试解决方案混合脚本测试解决方案•对UIAutomator的封装,提升了脚本的稳定性•综合使用各种图像识别技术,极大的覆盖了非Native场景下的测试•整合API,使得通过一套脚本即可覆盖各类场景仍然面对的问题•脚本执行容易受到干扰•非Native场景脚本支持较差•脚本编写比较耗时,如何提升效率测试脚本录制工具核心功能•手机屏幕展示•手机操作功能•根据操作生成脚本(难点)现有的脚本生成方案简单受分辨率影响太大优势简单通用性较好劣势元素属性可能不唯一基于坐标的方案基于元素属性的方案优势劣势基于点击路径的方案•构造页面的元素树结构•点击时记录往根节点回溯路径,综合每个节点的各属性,唯一定位当前点击元素录制工具整体解决方案整体自动化测试解决方案•基于录制工具录制脚本•在MTC平台下发任务•查看测试报告参考资料•••••••:End

1 / 37
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功