DevOps引领测试效能提升

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1.
2.
3. 熊志男  京东科技DevOps平台产品经理  多年研发效能工具开发与落地经验, 包含:代码质量、单元测试和持续 集成平台等  测试窝社区联合创始人,QECon大 会出品人  参与编写《京东系统质量保障实战》 并翻译《Selenium自动化测试-基 于Python 语言》
4. 01 测试效能的持续提升 目 录 02 测试的左移和右移 CONTENTS 03 DevOps引领测试变革 04 DevOps平台开放之路
5. 01 测试效能的持续提升
6. 测试效能度量指标 绝 对 数 量 相 对 数 量 线下质量 测试效率 线上质量 测试用例数量 平均缺陷解决时长 线上缺陷数量 缺陷数量 平均缺陷验证时长 线上性能指标 有效测试用例比率 测试研发周期占比 平均故障检测时间 测试覆盖比率 自动化测试比率 平均故障恢复时间 线下缺陷密度 自动化测试覆盖率 平均故障间隔时间 缺陷解决率 自动化测试执行率 系统可用率 缺陷逃逸率 自动化测试通过率 线上缺陷密度
7. 测试效能度量的一些坑儿 优先采用容易获得的指标 仅使用单一维度的指标 测试用例数量、缺陷数量 自动化测试用例数量 指标与个人KPI绑定 人工统计的指标 测试用例数量、缺陷数量 提测通过率、测试周期占比
8. 软件测试并不是体力劳动 体力劳动 智力劳动
9. 康威定律与质效工具的演变 测试团队 测试框架 测试平台 持续测试 质效团队
10. 测试框架的演进 1. 无框架:线性自动化测试脚本 2. 模块化自动化测试框架 行为驱动 3. 类库结构自动化测试框架 4. 数据驱动自动化测试框架 5. 关键字驱动自动化测试框架 6. 无脚本:自动生成用例的框架 混合驱动 基于日志生成用例 基于流量录制生成用例 基于模型生成用例 基于代码生成用例
11. 接口自动化测试平台 itest接口自动化测试平台
12. UI自动化测试平台 Cherry引擎
13. 移动端测试平台 应用层 设备占用 应用安装 应用管理 任务管理 远程真机 远程操控 添加测试任务 远程调试 设备管理 日志查看 运行任务 应用管理 结果统计 报告管理 脚本管理 脚本回放 应用上传 关联脚本 报告管理 脚本录制 应用下载 关联提测应用 在线截图 脚本管理 报告详情 脚本编辑 服务层 web 服务 任务调度 实时任务 设备管理 服务 接口服务 定时任务 web 接口 设备管理 设备识别 agent 接口 状态更新 报告解析 接收测试结果 接收截图 设备状态管理 脚本文件 apk文件 连接守护 日志 server 控件树过滤重组 执行自动化测试 投屏 server 控件树server 报告文件 视频流转码 执行操作命令 websocket server 解析结果,组装报告 静态资源管理 设备状态管理 无线连接 数据处理 拉取任务 解析脚本 执行步骤 上传结果 工具支撑层 移动端 http 服务 控件树获取 录制屏幕 pc端 执行操作 单点登录 单点登录 设备授权 爬虫服务 开启wifi 连接 市场名爬取 手机市场 图片爬取
14. 避免过于庞大的自动化测试平台 不要做被平台奴役的“工程师”
15. 02 测试的左移和右移
16. 测试左移方式的演进
17. 开发阶段的质量指标 定量 指标 定性 指标 代码违规数量 代码复杂度 代码评审通过率 代码技术债 单元测试覆盖率 代码评审覆盖率 稳定性 可测试性 可维护性 提 测 通 过 率
18. 测试左移的检查方式
19. 静态代码分析  Abstract interpretation  代码缺陷  安全风险  代码规范  Dataflow analysis  重复代码  Model checking  代码架构  Symbolic execution  代码复杂度
20. 代码复杂度检查 代码的方法复杂度高:难以理解、容易产生bug、难以测试
21. 动态执行检查代码结构
22. 配置依赖检查 编号 规则类型 规则描述 1 依赖包是否可为SNAPSHOT版本 生产禁止使用SNAOSHOT版本 2 Jar包黑名单 如fastJson需要升到1.2.60以上 3 依赖冲突检查 依赖冲突检查 4 groupId规范 com.jd等 5 version规范 1.0.0 6 Packaging类型 jar、pom、war等 7 插件白名单 Maven-javadoc-plugin、maven- source-plugin等 8 重复类检查 重复类检查 9 资源文件白名单 资源文件白名单
23. 单元测试 单元测试与集成测试 单元测试框架
24. 冒烟测试的演进 开发演示功能 测试执行自动化用例 测试准备冒烟测试用例,开发手工执行 提测事件触发冒烟测试自动执行 测试准备自动化用例,开发执行
25. 测试右移的技术实践 金丝雀版本 混沌工程 链路测试 A/B测试 测试右移 线上监控 用户体验分析
26. 混沌工程的五大原则 01. 建立稳定状态的假设。 02. 用现实事件做验证。 03. 在生产环境中进行实验。 04. 自动化试验。 05. 最小化爆炸半径。
27. 测试左移和右移动的经验之谈 打铁还需自身硬:重视测试环境质 量 从解决痛点入手:尽量少为开发增 加额外负担 避免重复造轮子:多使用成熟的开 源工具
28. 03 DevOps引领测试变革
29. DevOps的收益:打破部门墙
30. DevOps的收益:打通工具链 DevOps工具链 协同 开发 构建 测试 发布 运维 需求管理 代码仓库 多语言构建 测试过程 自动部署 系统监控 敏捷看板 云端IDE 制品库 测试用例 资源管理 日志系统 项目管理 代码扫描 流水线 缺陷管理 配置管理 DB管理 任务工时 变更管理 质量卡点 接口测试 发布流程 故障告警 测试环境 灰度策略 故障演练 单元测试 测试数据 测试MOCK
31. DevOps的收益:研发过程可视化 需求分析 需求交付周期 软件开发 开发时长 软件测试 软件部署 软件监控 代码评审率 测试用例数量 缺陷逃逸率 部署时长 服务端系统 调用量 交付吞吐量 代码库数量 单元测试覆盖率 有效测试用例 自动化测试 比率 执行成功率 部署失败率 调用成功率 需求停留时长 代码提交数 代码扫描结果 缺陷数量 自动化测试 失败修复时长 部署频率 可用率 需求状态 代码提交频率 构建频率 缺陷密度 平均测试交付 时长 部署前置时间 性能 需求颗粒度 圈复杂度 平均缺陷解决 平均自动化 时长 执行率 需求评审通过率 代码重复度 构建时长 构建成功率 提测成功率 资源利用率 客户端软件 崩溃率
32. 消除瓶颈:不同阶段的效能提升 需求阶段 开发阶段 测试阶段 发布阶段 “不确定性”在逐步减小,找到效能提升破局点
33. 内建质量:构建高质量的软件系统 “缺陷修复成本”在逐步增加,设置卡点,全程质量保障。
34. DevOps驱动测试变革 工具开发 质量管理 全程测试 低代码自动化 团队职责扩展 工具服务化 测试智能化 持续测试
35. 测试智能化实践
36. 04 DevOps平台开放之路
37. 统一DevOps平台面临的问题 统一DevOps平台 统一平台门户、固定的流程、一致性的标准 定制化诉求 不同团队DevOps成熟度不同 不同角色用户不同要求 迭代变慢 不同类型用户之间的需求博弈 运营成本高 用户咨询和支持的工作量大 测试场景 覆盖不全 不能覆盖所有测试场景工具
38. 平台开放策略 DevOps开放平台 01 开放平台入口 02 接口和数据开放 03 流程和标准定制 04 测试工具共建
39. 工具共建:提升整体测试效能
40. END

Home - Wiki
Copyright © 2011-2024 iteam. Current version is 2.137.1. UTC+08:00, 2024-11-16 02:20
浙ICP备14020137号-1 $Map of visitor$