资深测试专家汪珺-数字化测试的识别、分析、构建与实施

邢建章

2017/11/14 发布于 技术 分类

汪珺,Exin DevOps Master TTT首批认证授权讲师, 凤凰项目沙盘认证首批授权教练,挑战埃及沙盘首批认证权限讲师,原HP金牌讲师,历经国内外的金融、电信、航空、能源、互联网等80多个项目和百余场的培训活动锤炼,也经历国内外,在项目管理、敏捷、体系建设与质量建设、测试、IT审计和安全等有丰富的十多年实战、咨询与授课经验。

文字内容
2. 数字化测试的识别、分析、构建与实施 汪珺 DevOpsDays 2017·上海站
3. 目录 1 测试在DevOps中如何改变 2 数字化测试的定义 3 如何构建,我们来画一只鱼 4 画完鱼,我们来构建测试 DevOpsDays 2017·上海站
4. 瀑布 DevOps中,测试去哪了 需求 业务分析 迭代 开发 D开e发v 业务分析 开发+测试 质量保证 测试 测QA试 运维 预上线/生产 运维 预上线/生产 敏捷 DevOps DevOpsDays 2017·上海站
5. 测试的“零落”和“评估”问题 多种自动化测试工具/框架/平台 散落的测试环境 碎片化的测试资源 开发 过程 业务复杂,功能繁多 无法跨越平台/系统支持 后续自动化维护复杂 报表结果无法统一 DevOps平台 DevOpsDays 2017·上海站 数据 中心
6. 目录 1 测试在DevOps中如何改变 2 数字化测试的定义 3 如何构建,我们来画一只鱼 4 画完鱼,我们来构建测试 DevOpsDays 2017·上海站
7. 测试相关技术的演绎 价值驱动 具体描述 统一平台化 技术驱动进化 终端多样化 流程演绎变化 重要特性离散化 上线流程化 标准接口化 接口拼接化 元数据切分 数据规则引擎 公用模块统一调度 流量监控 业务驱动 日志大数据分析 CI集成 自动化部署与上线 容错化差异处理 云服务整合&构建 电子化自动评审 虚拟环境自动构建 No SQL 搜索引擎 异步化处理 Pad, IOS, Android Web, Client CRM, Core System UI终端自适应 UI模板早定义 UI 决定开发+测试 Windows Linux Unix 兼容性测试 众测模式 劳测模式 需求演绎,客户体验先行 按需制作,快速发布,抢占市场 需求模板化定义 平台开放性(上游、下游) 丰富平台性 共享用户群 业务分离化 无升级回滚 信息优先,信心支撑 自动部署构建+权限管理 自动化运维管理 监控+日志+大数据 DevOpsDays 2017·上海站
8. 看看数字化QA的定义先 DevOpsDays 2017·上海站
9. 目录 1 测试在DevOps中如何改变 2 数字化测试的定义 3 如何构建,我们来画一只鱼 4 画完鱼,我们来构建测试 DevOpsDays 2017·上海站
10. 多大的鱼?什么需求? DevOpsDays 2017·上海站
11. 挖掘,识别,定位,KPI与Value DevOpsDays 2017·上海站
12. 化石—>骨架?拼接的联系与生产力 DevOpsDays 2017·上海站
13. 鱼肉,规则与价值的填充 DevOpsDays 2017·上海站
14. 血管与神经的构建,即监控与反馈 DevOpsDays 2017·上海站
15. 鱼皮与鱼翅:安全感知与风险规避 DevOpsDays 2017·上海站
16. 鱼头,分析与汇报,指引与驱动 DevOpsDays 2017·上海站
17. 基因:形体、规模、流转 DevOpsDays 2017·上海站
18. 目录 1 测试在DevOps中如何改变 2 数字化测试的定义 3 如何构建,我们来画一只鱼 4 画完鱼,我们来构建测试 DevOpsDays 2017·上海站
19. 不知道从哪开始,就从测试驱动开始 不知道选择什么样的技术 不知道如何进行技术升级 不知道培养哪方面的能力 不知道招聘什么样的人 不知道快速反馈成果 不知道如何选择工具 不知道从哪开始构建 不知道如何改进当前节点 不知道如何进行双态模式构建(稳态+敏态) 不知道如何形成快速认知 不知道怎么具体构建DevOps下的文化 不知道如何定义KPI/OKR DevOpsDays 2017·上海站
20. 定义大小 公司高管 部门中层 部门基层 DevOpsDays 2017·上海站 § 咨询与诊断(了解当前IT策略,企业模式,产品模式,支持力度) § Exin DevOps Master(文化、理论、方向) § Lean IT (如何打造精益型IT企业) § 凤凰项目沙盘(自上而下推动DevOps进程,组织与流程自优化) § 企业级别案例分享(成功与曲折案例分享) § 项目跟踪与跨组织级联建设 § 咨询和诊断(当前IT流程、运转效率、技术架构、痛点、团队) § Exin DevOps Master(文化、理论、方向) § DevOps体系构建、路线规划与落地实施(指导落地方法论与案例) § 凤凰项目沙盘(如何与高层、基层同步信息,构建DevOps体系) § 敏捷、Lean IT (DevOps 基石) § 构建OKR、打造团队、工具选型、技术落地方向 § 咨询和诊断(当前节点技术效率分析、瓶颈分析、工具对比与选型) § 技术化方案指导 § DevOps技术培训 (工具实操、Lab组建指导) § 敏捷培训、Kanban跟踪与建立 § Lean IT 工程师部分 (实际分析当前消耗节点,流程与工具改进) § 凤凰项目沙盘(领悟快速同步、持续反馈、工程构建思路指导) § 挑战埃及沙盘(敏捷型项目实操) 20
21. 识别,分析与调研 Manage dependencies across releases 007PR OBJECTIVE Identification of dependencies across releases for program management planning and reporting. IMPACT (how it will work) • Selection and implementation of release dependency solution (e.g. Rally) • Training of PMs in using release dependency solution • Define process for identifying and communication program level view GOVERNANCE Responsible Accountable Consulted Informed SP3d Program Manager IT PMO Infra. and Ops Services Strategic Business Solutions EVOLUTIONARY PHASING Walk/Run Brief OBJECTIVE of how the recommendation could evolve over the mid/longer term DEPENDENCIES • Purchase of tool (e.g. Rally) INVESTMENT RANGES Implementation Additional ongoing support Cost to launch Costs to support STRATEGIC KPI ALIGNMENT Dev KPIs Ops KPIs Reduction in # of production defects Infrastructure consolidation ratio Reduction in project delays (time, budget) ü Reduction in cost per server Reduction in security related incidents üIncrease in accuracy of effort estimation Reduction in # of failed orders in prod Increase in compliance to PDLC ü Reduction in # of defects per project ü üReduc. in time spent support vs. delivery Page21 DevOpsDays 2017·上海站
22. 构建骨架,插入测试 On-Premise or Cloud Application Under Test Users Scripts/Data SIT UAT Pre-Pro Test Server (Windows, Linux, Unix) Results Screenshots § Plan § Design § Scripting § Analysis Mobile Device Automation Tools Mobile Device Automation Tools Automation Tools Agent Laptop Desktop Agent Agent Virtual Machine DevOpsDays 2017·上海站 22
23. 铸造身体,沉淀经验 卓越中心 Most Companies Application Deployment & Upgrades Level 0 Quality Agnostic No documented QA processes or recognition of the need for them Level 1 Quality Initializing Project-based technology, processes & personnel Majority of testing, is still manual Testing, if done at all, is manual and often by developers Level 2 Quality Conscious Centralized technology, licenses, admin and support QA process in place, but mainly in individual projects 获得控制及可靠性 产品及流程标 准化 Level 3 Quality Savvy Centralized technology Centralized service bureau for QA personnel Centralized methodology and best practices for QA procedures 第四级 品质专栏 集中技术及人员 测试流程控制和质 量计划 质量分析涉及企业 核心思想和影响力 IT业务中心 获得优秀的操作性 稳定增长 改变 融入 DevOpsDays 2017·上海站
24. 消化道构建,顺利流转 延展性 重用性 扩展性 移植性 易用性 特定应用 对于第三 重用 重用测 程序的关 方API, TP/TC/TS 试数据 键字和函 接口构建 模板 与关键 数库 共同的功 字 能 重用常 用的函 数库 集成 测试 管理 平台 (HP QC,… 等等) 支持工作站或 易于设置 移动平台(UFT, 自动化工 RFT, Renorex, 作空间/ Selenium , 利用现有 SeeTest, HP 的工作空 Mobile Center… 间(Excel) 等等) 用户自定义 关键字用来 描述测试案 例流程/数 据, 要求无 代码化 DevOpsDays 2017·上海站
25. 消化道构建,顺利流转(续) Presentation & Controller PHP ( Laraval ) Interface ( JAVA ) Data ( MySQL, MariaDB ) Accessibility Local Network, Web browsers and Mobile Devices Supports HP ALM, HP UFT, SeeTest, Selenium, Cucumber and etc. DevOpsDays 2017·上海站
26. 监控植入,成就血液与神经 DevOpsDays 2017·上海站
27. 构建形体,随时切换 集成式自动化测试平台; 统一模式开发;规则化引擎;插件式工具接入;分布式的资源管理模式,降低维护性代价 On-Site Team Off-Site Team ODC Team Client Teams 统一调度式的自动化测试平台,调配不同的测试工具,插件式的工具 集成模式,一个脚本,适用于不同工具。 需求设计 功能设计 自动化转 换 自动化设 计 计划调度 Repeat N Time(s) 执行跑批 … 测试结果 测试集合 测试场景 原子交易 Front-End UI Based Automation Mobile App Automation Manual Testing 测试步骤 Interface(API) Testing 测试数据 Service Virtualization 缺陷管理 Performance & Security DevOpsDays 2017·上海站 Service Stub 27
28. 安全风险,皮肤感知 软件安全改进以修复代码中发现的安全瑕疵 软件架构评审 开放代码 安全验证 静态代码扫描 动态扫描 渗透性测试 Production DevOpsDays 2017·上海站 28
29. 构造大脑,数据分析汇报 DevOpsDays 2017·上海站
30. 实施概要 瓶颈调研, 找出KPI 数据化衡量, 临界值确认 背景分析 工具接入, 自动流转 集成阶段 类型 自动化测试工 具 框架 所需语言 所属模式 脚本质量 数据量级 开发性代 价 维护性代 价 外部集成 报告模式 并发控制 特点 适用类型 KPI考核模式 运行效率 CI集成模 式 源代码共 享级别 ROI分析 接入可行 性分析 数据类型 其他… 规则添加, 经验化规则 监控插入, 构建反馈 持续沉淀 统一视图, 评估汇报 Pipeline 设计 执行 报告 接入模式 实施 验证 CI集成 其他功能 DevOpsDays 2017·上海站
31. 实施周期举例 现有的功 能 1.0 版本 缺陷管理 自动化测试 需求管理 服务虚拟化 应用测试 性能 安全 2.0 版本 和CI/CD集成 (例如Jenkin) 统一看板 & 报告 数据分析 其他 从持续测试到支持开发运营 3.0 版本 开发运营 & 测试运营 加强用户体验 人工智能 & 机器人技术 数字质量保证 大数据 & 分 析 DevOpsDays 2017·上海站 31
32. 测试驱动构建路线 第一阶段 开发 à SIT环境 à 测试环境 第二阶段 第三阶段 开发 à SIT环境 à 测试环境 à UAT环境 需求(创意) à 开发 à à SIT环境 à 测 试环境 à UAT环境 SIT环境 开发人员 测试环境 SIT环境 测试环境 UAT环境 开发人员 n 持续提交、持续构建 n 建立代码审核和质量检查流程和机制 n 减少开发人员重复和易错工作 n 快速和标准化构建应用环境 n 加快开发、测试和关键用户的沟通反 馈 n 缩短功能特性上线时间 n 加入蓝绿部署、灰度部署等 n 加入部分监控 n 加入性能测试与安全性测试 n 避免了人为因素带来的正式环境危 害 n 加快开发 DevOpsDays 2017·上海站 需求(创 意) 开发人 员 SIT环境 测试环 UAT环 境境 n 提高了团队工作的流动性 n 加快需求到上线的速度 n 加入Mobile相关建设 n 逐步实现迭代增量的开发模 式 32
33. 测试驱动构建路线(续) 1. 从传统模式,到敏捷模式,最终DevOps下的生产关系构建方式 2. 在各模式下,找寻最佳切入点,稳步安全的改进流程,自适应到最佳状态 3. 从敏捷模式下,通过方法识别瓶颈,并通过自动化模式来减少重复的活动与人工审批环 节,即将不稳定的生产关系与重复劳动,融合到合适的生产力(工具)中 4. 双态/双模挑战,如何在流程构建中,将稳态的监管与质量要求,融合到互联网模式的 敏态开发运营中 5. 定义正确的KPI,找寻适合的工具链来构建流程体系,驱动与自监控整体过程 6. 构建CI持续集成,接入各端的自动化工具,形成骨架 7. 规则逐步融入到自动化工具中,融合血肉 8. 构建Pipeline流水线,链接各端工具链与监控节点,形成大脑 9. 构建持续交付、持续部署,进行虚拟化、标准化、版本管理,构建或引入或改善 CMDB、构建基于运维端的开发框架,构建正确的监控模式与指标 10. 引入分级测试,将运维端、测试端的检查点尽可能左移到最前端,并通过自动化工具与 规则引擎,达成一致 11. 构建自学习型组织与创新生态,构建培养人才的阶梯传送链 DevOpsDays 2017·上海站
34. 演进路线设定 17 此为假设路线,内容与顺序都可以根据实际情况进行修改 转型服务 咨询服务 持续集成 持续测试 持续交付 持续运营 持续反馈 移动端敏态构 建 云端敏态构建 1 评估与度量 3 模型构建 3 编辑集成 4 代码扫描 & 单元测试 6 发布自动化 6 CMDB 2 4稳态 & 敏态 KPI评估与度量 移动端测试 IaaS/PaaS 2 设计转型路 线 变更流程管 理 5 管道平台 4 接口 & 界面 自动化测试 6 Docker & Cloud 部署 自动修复机 制 用户体验服 务 移动端集成 公有云/私有 云 设计解决方 案 架构设计 5 虚拟化服务 4 性能测试与 分析 标准化管理 6 配置管理 7 版本优先级 管理 移动端监控 SaaS on Demand 敏捷与精益 培训与模拟 微服务设计 7 自定义集成 测试数据准 备 基础架构设 计 A 自定义服务 / 定制开发 A 既有平台支撑 A 合作伙伴 / 外界采购 5 SecDevOps 5 测试管理平 台 … 版本 & 升级 管理 7 用户/应用/系 统 级别监控 … 补丁管理 7 性能调优 … 战略投资 7 大数据支撑 监控指标定 义 … 移动测试云 Citrix/VmWare 支持 DevOpsDays 2017·上海站
35. 会议 培训 咨询 • 8月18日 DevOpsDays 上海 • 全年 DevOps China 巡回沙龙 • 11月17日 DevOps金融上海 DevOpsDays 2017·上海站 • EXIN DevOps Master 认证培训 • DevOps 企业内训 • DevOps 公开课 • 互联网运维培训 • 企业DevOps 实践咨询 • 企业运维咨询 商务经理:刘静女士 电话 / 微信:13021082989 邮箱:liujing@greatops.com
36. Thanks 荣誉出品 高效运维社区 国际最佳实践管理联盟 DevOpsDays 2017·上海站
37. 想第一时间看到 高效运维社区公众号 的好文章吗? 请打开高效运维社区公众号,点击右上角小人,如右侧所示设置就好 DevOpsDays 2017·上海站