《3-天行云真机自动化测试平台建设实践之路-莉莉丝游戏-刘豹、曹坤.pdf》由会员分享,可在线阅读,更多相关《3-天行云真机自动化测试平台建设实践之路-莉莉丝游戏-刘豹、曹坤.pdf(56页珍藏版)》请在三个皮匠报告上搜索。
1、天行云真机自动化测试平台建设实践之路莉莉丝游戏刘豹&曹坤目录CONTENTS0 1初步构想Preliminary Conceptions0 2平台建设Platform Construction0 3技术实现Technical Realization0 4自动化介绍Automation Introduction0 5未来展望Future Outlook0 1初步构想Preliminary Conceptions现 状项目组众多每个项目组需进行大量的各项测试,相互之间互借手机设备测试周期和成本大量的回归测试需要耗费巨额的时间和人力成本测试可靠性和稳定性多个环节的人工操作,使得测试结果可能出现误差或
2、者遗漏平 台 诉 求设备资源共享各项目组随时随地可以找到所需要的设备资源,完成自己的测试需求全自动化测试通过自动化测试脚本实现全自动化的测试流程,提高测试效率和准确性多场景支持支持回归测试、兼容性测试、性能测试等,满足不同测试需求场景实时反馈实时反馈测试进度和结果,方便测试人员及时发现和解决问题高灵活性在网络允许的情况下,设备即插即用,充分利用设备资源为何选择自主研发按需个性迭代数据永久存储联动内部其他平台0 2平台建设Platform Construction目前成果 目前接入10+项目组,覆盖游戏及中台项目组,持续扩展中 累计设备接入量达到800台,覆盖上海、成都、深圳等地 自动化脚本覆盖
3、多条业务线,在回归测试方面提升20%效率 集成多种测试类型,功能、弱网、兼容、性能等,并进一步扩展中功能模块02.设备管理01.Agent管理03.脚本管理上传、管理脚本,支持在线编辑04.任务管理05.测试结果维护任务,支持查看报告以及通过多机投屏页查看实时进展任务完成后的脚本运行详情、性能监控、崩溃信息等信息查看、使用以及管理客户端设备信息维护以及单设备调试Agent管理Agent信息维护工具跨平台支持设备信息获取设备注册至平台Agent管理密钥获取:用户成功创建agent后,会收到一条带有agent密钥的通知消息设备管理设备信息维护设备权限管理设备快速使用设备管理-单机调试远程调控应用管
4、理02脚本调试03终端04文件管理05快捷截图06远程ADB07弱网模拟08设备报障0901设备管理-应用管理应用列表展示应用管理维护应用快速安装设备管理-脚本调试设备管理-终端终端命令使用快捷指令发送历史日志下载设备管理-文件管理文件目录展示文件上传文件下载设备管理-其他截图录屏远程ADB地址设备管理-弱网模拟模拟各种网络环境进行特定网络需求的测试仅适用于机柜中的设备设备管理-设备报障实时反馈设备故障,维护人员收到消息后立即进行处理设备管理-设备查找若在平台未发现自己所需要的设备,可以点击【查找更多设备】进入【资源管理平台】中去查找设备管理-查找更多设备找到所需设备的负责人,联系后将其注册到
5、天行中来使用脚本管理脚本目录:以目录形式管理脚本,脚本间支持相互引用上传脚本:支持文件、文件夹上传,包含脚本与图片在线编辑:脚本在线进行编辑修改,实时刷新引用关系参数配置:账号密码等参数可在脚本中用变量替代,执行时会自动分配配置的参数脚本管理-脚本列表脚本目录维护脚本上传脚本维护脚本管理-在线编辑脚本在线编辑图片关联参数配置任务管理执行完成后任务结束任务报告一对一按照设定时间多次执行任务报告一对多任务管理-单次任务单次任务维护查看实时进度完成后实时通知任务管理-循环任务循环任务维护灵活设置频率灵活设置通知执行记录查看测试结果任务中安装包的安装结果统计安装结果展示对特定应用的性能监控结果性能监控
6、脚本执行的步骤详情(含截图)执行详情执行脚本过程中设备崩溃情况展示崩溃数据测试结果维护报告信息查看结果总览支持详情查看测试结果执行总览执行详情安装详情埋点数据校验详情崩溃详情性能监控详情后台管理-统计基本信息:接入设备总数、当前在线设备数、Agent总数、Agent在线数量、脚本总量、执行总时长项目组:使用时长统计、任务执行次数统计用户:使用时长Top20设备:品牌使用时长分布、系统使用时长分布、机型使用TOP100 3技术实现Technical Realization架构选择微服务架构多服务支撑,相互间通信K8S集群微服务设计sky-web(前端服务)sky-server(后端服务)sky-
7、automation(自动化服务)sky-agent(客户端服务)根据职责去切分服务,确定开发服务的数量以及最终的职责承担服务与服务之间的通信关系、数据及请求的传输形式确认服务开发完成之后,针对于网络或者容灾情况去考虑的后续维护技术选型各服务的技术方案实现,包括但不限于技术选型、数据库选型等服务职责通信规则运维部署sky-web页面渲染及交互设备数据处理业务数据处理sky-server业务数据维护业务逻辑处理提供OpenApisky-automation专注于脚本执行内外网通信媒介项目镜像独立维护sky-agent独立运行,可打包成客户端,支持多平台运行获取手机信息,实时监控手机服务通信其他基
8、础服务运维部署代码仓库维护服务镜像构建集群服务监控0 4自 动 化 介 绍Automation Introduction自动化介绍技术方案整合整合开源自动化解决方案,减少脚本编写上手成本多元自动化赋能性能测试、埋点测试、回归测试、弱网测试、兼容测试Pipeline构建与项目组CI/CD流程结合,自动触发回归测试多方面完善自动化业务图像匹配优化业务侧自定义函数扩展自动化策略扩展框架侧主流测试框架集成原生脚本支持远程手机连接运行环境侧Docker启动脚本参数化运行环境清理项目组环境隔离动态扩容监控服务兼容问题如何解决?技术方案整合如何提升易用性?转发端口权限控制自定义脚本顺序多机投屏脚本引用支持报
9、告数据持久化存储三方数据获取自定义消息通知定时执行跨办公区网络支持程序及网络支持ADB转发端口固定脚本及执行支持实时运行日志报告及展示支持自定义结果获取12整合ws-scrcpy投屏解决方案,无需额外进程监控屏幕旋转,提升投屏速度,机型兼容性利用minicap投屏作为备选方案自动化业务赋能-埋点测试天行-数据校验流转图痛点需要手动进行埋点验证,各种包体,埋点测试手动出发,工作量很大解决方式自动化解决:脚本执行触发埋点,在执行功能验证的时候对数据埋点进行校验自动化业务赋能-埋点测试天行-数据校验配置集成三方性能监控,获取性能数据使用方便,具备良好的易用性原生支持CPU、JANK、内存等性能数据通
10、过ADB获取,使用简单,存在兼容性问题自动化业务赋能-性能测试12自动化业务赋能-性能测试与引擎中台合作出具专业报告,提供函数,调用分析、GPU分析等数据3通过TC工具,模拟各种网络频段以及丢包、延迟设置自动化业务赋能-弱网测试、兼容测试基于自动化脚本进行兼容测试Pipeline构建定时、编译触发Jenkins调用调用执行机器启动游戏调用脚本执行脚本收集测试数据报告产出痛点每日回归真机固定化内容,工作单一且枯燥不能提前发现模块阻塞问题,无法提前规避解决方式自动化跑固定稳定内容提升多分支稳定性流程开始自动化运行报告产生代码提交构建、定时构建出 包上 传 天 行报 告 产 生多 校 区 支 持上海、成都、深圳流 程 完 善自动化测试接入Jenkins,打通真机包测试、性能自动化等实 现 效 果自动触发、运行,逐步替代人力繁琐回归工作调用天行对外API真机包自动安装手机执行自动化测试任务推送报告通知Pipeline构建0 5未 来 展 望Future Outlook未来展望我们还有很多想要做的多平台联动,如与接口测试平台、压测平台、进行联动接入更多项目,实现全公司的项目自动化测试全覆盖深挖自动化执行策略,对自动化测试接入类ChatGPT做尝试赋能业务、全天候稳定性测试、复杂工程支持、引入引擎自动化、支持AI行为树