• 1. 统一测试平台之无线测试平台分享于龙、富曲
  • 2. 测试工具研发团队三个统一:入口统一、技术体系统一、迭代流程统一研发方向:提升工具质量、走出技术支持的困境、走贴近业务的工具研发道路承载小微金服测试工具研发使命统一测试平台:前端设计、基础组件、新测试技术研发等 PC自动化:Web UI功能自动化、接口测试框架、调度体系等 链路分析:OSGI分布式系统问题快速定位、业务场景日志分析等 数据平台:银行接口mock系统、测试数据管理、场景准备等 无线测试:真机访问、应用提测、设备管控、自动化测试、无线mock等 字节码测试:覆盖率与应用瘦身、故障注入、静态分析等 其他:性能评测中心、线下环境运维系统、角色化管理实践等
  • 3. 统一测试平台-PC平台ApiTest AnyMock Service Mock 数据组件ATD管理 ASS、生活助手Mock测试管理数据管理原子化与集成化统一技术体系低耦合与高内聚字节码测试故障注入、字节码扫描代码覆盖率用例管理系统TCenter线下环境运维系统PAAS链路治理Sofarouter之ksp系统Mieye & Mieye portal日志分析平台loglib性能平台性能评测中心性能实验室UI自动化框架ATS-WEB UIApi自动化框架-ATS-Api其他Account、DbManagerIssue、Monitor权限、用户、统一组件持续交付接入
  • 4. 统一测试平台-无线平台统一控制中心(如任务管理、设备交互管理等)自动化测试升级测试字节码分析安装卸载设备管理借用管理真机访问设备管控应用提测原子化与集成化统一技术体系低耦合与高内聚Monkey测试遍历测试性能监控安全扫描应用打包质量报告用例管理数据准备UISDK缺陷管理app缺陷提交缺陷通知缺陷报表无线mock移动缺陷
  • 5. 协作开发模式 静态资源,aqc-assets 公共组件,aqc-common 模块A,Prj A 模块B,Prj B 模块C,Prj C … 工程组织 公用的图片、CSS、JS、Config等 公用的GridView、Dropdown、Checkbox等 公用的RichTextbox、Datetime控件等 … 静态资源与公共组件 一个应用,一个工程 数据库设计 三层架构开发 前端渲染 系统发布 开发单位 静态资源共享 通用组件共享 应用开发隔离 数据库隔离 开发原则One PersonPeer ReviewOne AppOne DBuedshareOne AppOne ProjectShare静态资源 & One App & One Project & One DB & One Owner & Peer Review
  • 6. 字节码测试 静态分析:在不执行程序的前提下对其进行分析并发现可能隐含其中的缺陷 动态分析:通过对静态代码进行缺陷注入,执行测试,发现隐含在异常流程中的逻辑错误,以此校验上层应用的稳定性表现 。 扫描策略配置 定时扫描 立即扫描应用信息配置 Svn App部署环境扫描结果 提交到CQ 提供OpenApi缺陷流程 开发修复 测试校验选择场景 依赖、网络 并发、硬件执行并测试 取远程class文件 新class文件回传 方案特色 代码在线浏览,问题在线排查 发现缺陷有效率高达90%以上 效率高 影响面小 技术特点 深入JVM指令的技术,class loader技术
  • 7. 真机访问要完成上述流程,需要解决两个主要的技术点 1、高效的截图技术(深入android内核程序的技术) 2、命令的远程分发执行 1.浏览器发出请求2.获取手机屏幕截图3.浏览器捕获鼠标事件4.事件回传到服务器5.服务器通过adb将事件发送到手机
  • 8. 无线性能监测源代码级 方法级别 模块级别 第三方库引用的消耗 缓存策略的设计 垃圾回收策略设计 IO 操作的线程化异步埋点自动化测试硬件级 不同品牌机型 不同系统版本的性能 用户场景级 流量消耗 电量消耗 操作响应时间 CPU消耗 crash率 应用启动时间无线测试平台-性能数据分析
  • 9. Monkey测试基本概念 稳定性测试:monkey是如何做到的? Adb:是由android sdk自带的命令行执行工具。 伪随机事件流 核心特性 事件数量和频率可定制 运行约束选项,如针对特定包典型示例 $ adb shell monkey -p your.package.name –v -v 100 -P代表指定应用 -V相当于日志级别,可以有多个-v,每加一个-v,日志详细程度提升一个级别 100表示随机发送的事件数 方案特色 参数可配置化 丰富的截图与logcat日志 参考文档: http://developer.android.com/tools/help/monkey.html http://blog.csdn.net/linghu_java/article/details/6732895 http://www.cnblogs.com/mythou/p/3285925.html
  • 10. 安装、启动、卸载、升级 选择设备 用户拥有的 系统提供的 运行测试 发送请求 Controller执行 测试结果 Controller结果返回 应用上传 上传新应用 选择已有应用结果分析 安装结果与耗时 启动结果与耗时 卸载结果与耗时 升级结果与耗时 移动设备信息
  • 11. UI自动化测试一 测试框架与被测试app融为一体,成为一个APK用例管理、调度服务器、数据准备服务器被测试app的服务器端自动化测试框架被测试APP(如支付宝钱包手机客户端)
  • 12. UI自动化测试二 方案特色 基于无线开发提供UISDK,既与研发流程深度集成,又是相对独立移动自动化测试解决方案 用例特点 用例与app一块打包成应用安装包,在手机端执行。 可以直接调用无线设备中丰富的api进行测试,大大提升代码的可测试性,与case开发效率 整体方案 无线自动化测试计划管理调度管理CQ集成工程管理设备管理用例管理配置管理报表管理OpenApi数据准备
  • 13. 设备管控 设备管理 设备入库 设备查询 设备盘点 借用管理 设备申请 借用审批 设备归还 催还设备 借用报告 真机访问 远程上传、安装apk 远程测试 用于移动设备资产管理、设备借用登记等,直接链接到AQC平台的设备还可以被远程访问、用于远程在线测试
  • 14. 统一控制中心一 真机访问 远程命令执行 键盘操作转发 鼠标事件转发 apk上传安装 Api接口 安装卸载 自动化、远程命令执行 性能采集 Monkey测试 日志、手机文件操作 远程截图 WEB UI操作Api接口
  • 15. 支付宝产品质量部互联网金融测试领域标杆引领互联网金融测试持续交付测试平台质量体系测试架构无线测试金融测试
  • 16. 谢谢