360 Qtest团队创始人刘瑾-打造快速交付模式下的测试体系

pollinggnarled

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

随着市场对软件质量的的要求不断提高,软件测试变得越来越重要,而在互联网公司,工作节奏快速,配合部门众多,测试任务量庞大,我们如何在这样的高压环境下生存,并能保障产品质量工作的完成。从奇虎360的质量管理实战出发,演练如何打造一套质量、效率、流程兼顾的测试体系,以及在测试团队管理中的一些最佳实践。 帮助听众了解互联网测试的真实情况;了解测试领域在大型互联网公司的实践现状;了解大型互联网公司测试技术的挑战和难点;了解在工程领域测试团队可以解决的问题和追求的高度。重新梳理对测试技术和一些基本测试理念的误解;了解历久弥新后沉淀下来的团队结构模式,测试流程、规范、技术模型,找出互联网测试团队测试体系在质量、效率、流程的一些最佳实践。

文字内容
2. 如何打造快速交付模式下的测试体系 360质量体系创业实践 刘瑾 DevOpsDays 2017·上海站
3. 目录 1 发展阶段和心得 2 测试体系设计及构建的拆解 3 困难与挑战 4 主干回顾及思路梳理 DevOpsDays 2017·上海站
4. 讲师介绍 刘瑾 360技术委员会委员,Qtest团队创始人、负责人。北京航 空航天大学大学、清华大学研究生。参与翻译高等教育计 算机专业教材《软件工程》一书。 09年末加入360,组建测试部门搭建测试体系。在360创 立服务端测试团队,后跟进无线、智能硬件、高并发实时 服务等多元化方向,继而团队改名QTest 专注服务端,移动端,插件端方向,服务于360内部商业 收入类,推荐类,搜索类,游戏类,数据类,信息流,智 能类产品质量。紧跟市场和科技发展步调。 关注我们: 公众号:Qtest之道 个人邮箱: liujin@360.cn DevOpsDays 2017·上海站
5. 今日目标 1. 了解360质量体系的构建、发展过程及实践 2. 通过360质量体系的拆解了解每个组成模块的关键因素和特征 ü 了解测试团队所处每个阶段的关键要素 ü 了解质量全景模块设计 ü 评价360质量体系的质量管理、效率、流程兼顾的特点 ü 了解测试团队结构现状的优劣 ü 了解互联网公司测试的挑战和难点 ü 梳理测试技术和基本测试方法的误解 3. 通过梳理出来的主干,能够理解和复制 DevOpsDays 2017·上海站
6. • 从零组建一个团队都要经历哪些阶段,考虑哪些问题? • 发展过程中可能会遇到怎样的困惑,压力和困难? • 团队的核心竞争力和关键价值是什么? • 测试体系会面临的变革有什么? • 我们会遇到怎样的挑战? DevOpsDays 2017·上海站
7. 发展阶段和心得 原始期 发展期 磨合期 稳定期 进步期 管理者:在过程中找到自己的思路 领头羊:在过程中找到自己的方向 工程师:在过程中找到最好的位置 DevOpsDays 2017·上海站
8. 发展阶段和心得 原始期:建立测试工作流,训练业务组各角色适应配合测 试的工作;技术深度扎根;解决公司关键问题。 发展期:稳定并形成主干测试方法和流程基础,沉淀工具, 积累关键人才;解决完整的业务流。 磨合期:解决重复矛盾;塑造系统化质量框架;筛选和人 才的选育留;系统解决关键业务质量需求和质量精准度问 题。 稳定期:成形测试体系;寻找突破;提升测试方式、方法 的先进度;为公司解决通用矛盾,效率化质量过程。 进步期:测试体系和产品开发流程协作; 智能化质量的流程; 生产力优化,商业价值化。 DevOpsDays 2017·上海站
9. 发展阶段和心得 DevOpsDays 2017·上海站 唤醒自己的目标感
10. 目录 1 发展阶段和心得 2 测试体系设计及构建的拆解 3 困难与挑战 4 主干回顾及思路梳理 DevOpsDays 2017·上海站
11. 质量体系的基础维度 文化原则:理念与氛围;有所为有所不为 质量管理: 测试方法,手段 研发测试流程:环节设计 质量标准:为现状负责,为结果负责。 工具/平台:效率化的基石 人员:人尽其才;培养提升 结果效益:测试结果;质量成果;生产力;价值 DevOpsDays 2017·上海站
12. 发展阶段和心得 质量文化原则: 1. QA必须要比产品更懂产品,比开发更懂技术,比运营 更懂用户 2. 务实的测试思想和技术 (合适) 3. 在互联网环境中打造一套合适高效的质量智能保障体 系 4. 精英团队 精神支柱 DevOpsDays 2017·上海站
13. 团队和体系发展历程 DevOpsDays 2017·上海站
14. 建立完整体系的关键方法流 1. 分析公司和团队所处的阶段 2. 制定合适的文化 3. 初定适应环境的测试流程 4. 构建人才模型、组团队 5. 接入核心业务,分析并解决核心质量需求,发掘当 前质量目标 6. 制定合适的测试策略和测试手段 7. 精英化团队的业务构成和人员构成 8. 产品化质量流程 9. 快速复制到其他业务需求 10.找到公司对价值的定义 11.用结果说话 12.将质量测试工作与关键价值做关联 13.输出、运营 DevOpsDays 2017·上海站
15. 原始期 -- 内部创业的开始 -- 荒原求生 策略:把测试工作流建立起来,训练大环境里各角色适应配合测试 工作;技术深度扎根;解决公司关键问题。 需要解决: 3. 此时产品质量具体指什么? 根据发布计划和目标用户量制定质量标准、判别问题 的优先级。 目标:获得认可,开辟更多自由空间 ü 储备人员力量 ü 沉淀技术资本和认可度 ü 积累物质资源 规范 化 效率 化 DevOpsDays 2017·上海站
16. 原始期 经验谈: ü 扑入业务细节 ü 业务上最好先聚焦做好一件事,且要有专业技术高度。 ü 先抓住一个焦点性技术点提升高度和深度 a. 测试的覆盖率 --- 从拆解需求,case设计训练基本功 b. 服务端常见架构的深度了解 --- 达到与开发一样程度 DevOpsDays 2017·上海站
17. 发展期 重点: 1. 稳定测试方法和流程基础,并形成可被简单快速 clone的标准级产品; 2. 沉淀工具,巩固技术广度,拓展业务方向;积累 人员,测试物料,设备,数据,服务器等资源。 3. 为公司和产品解决大面积的质量需求问题。 需要解决: 树立测试专业度的信任;拓展测试方向;搭建可靠 人才框架 DevOpsDays 2017·上海站
18. 发展期 经验谈: 1. 不断的引入业界新的测试工具、概念、解决方案,为 不同业务设计定制化的测试流程和标准,并校准测试 方法库。 2. 依照接受的流程,起步开发自己的工具系统。 Leo接口框架,提测系统,安全测试引入,质量数 据统计轻量级分析 3. 发展依赖leader的个人特点 DevOpsDays 2017·上海站
19. 需要的角色 注意人员特点的 配比 DevOpsDays 2017·上海站 发展期 负责人 接口人 业务型 技术型 拓展型
20. 磨合期 重点: 解决重复矛盾;塑造系统化质量体系的专业形象;投产到不同的业务 环境里磨合自主“产品”。为公司解决关键业务和模块的质量需求和 质量精准度问题。 DevOpsDays 2017·上海站
21. 磨合期 目标: 稳定团队结构;稳定测试体系框架;基础测试资本的覆盖面没有重 大的遗漏(比如被业务吞没还没实践过单元测试) 经验谈: 1. 精心对待细节的测试错误,小纰漏,提高测试的精确性,提升 信任度。 如偶然一次的漏测,性能数据的异常,测试结果的偏差。 3. 应该注意测试成果对业务公司影响的表达 DevOpsDays 2017·上海站
22. 稳定期 重点: 1. 测试体系成形;寻找突破; 2. 逐步改变测试水平和测试方法的先进度; 3. 为公司解决系统性的,通用的质量问题 火线:代码静态扫描 大白:性能自动化平台 探针 :APP质量探测和Crash追逐 Case+: case 设计和公共用例库 三剑客: 自动化接口测试 DevOpsDays 2017·上海站
23. 稳定期 目标: 打造测试体系的必要部件;完备通用的测试解决方法的配套; a) 测试范围的量化 b) 常见不同级复杂度业务的质量指标的benchmark c) Qmtest,Mango的诞生 经验谈: 1. 工具化,产品化只是形式不同,最关键还是前3个阶段的技 术基础和业务知识积累扎实。 2. 需要营销知识和表达力。 DevOpsDays 2017·上海站
24. 进步期 重点: 测试体系和产品开发流程协作; 智能化质量的流程; 目标: 智能化流程,反复提高覆盖率和精准性,bug数目,发现效率,fix建议 推荐提示。 DevOpsDays 2017·上海站
25. 质量全景模块设计 DevOpsDays 2017·上海站
26. 我们需要更智能的体系化的质量解决方案 第一天就开始积累工具,平台,数据,他们是否可以配 合协作? DevOpsDays 2017·上海站
27. 研发测试流程 解决方案 测试 反馈校准 DevOpsDays 2017·上海站 评估 标准
28. • 标准化: a) 打磨合适的基础测试流程。 流程 测试 需求 测试 规划 测试 设计 动静态 白盒 自测 持续 集成 准入 提测 冒烟 详细测 试两轮 回归 测试 准线上环境 发布校验 线上 回归 运营 反馈 校准测 试设计 和策略 b) 落地研发测试流程中各阶段的产出和标准。 • 流程工具化: 针对测试场景的工具集开发; 测试自动化:接口100%,UI 30%; 专项测试工具 • 流程自动化:大白,Case+ test.360.cn • 智能化: 缺陷修复,一键测试 DevOpsDays 2017·上海站
29. 测试工作 1. 需求自动识别拆解:全文检索,切词,关键词匹配 2. Case生成:公共用例复用 3. Case全覆盖:1,2点综合判定 4. 测试场景生成:复用到智能 5. Case执行:手动+自动化测试,case管理 6. 功能测试: 前端检测:HTML+CSS+JS,MVC结构 兼容性检测:自动化测试的多环境匹配 代码检测:火线 应用逻辑检测:在线监控 服务检测:稳定性 产品级检测:用户体验,业务特性 效果评测:广告投放效果,搜索 DevOpsDays 2017·上海站
30. 质量体系的关键构成 标准与评估 打磨功能和性能的基准数据 LAMP结构服务单机平均性能:QPS200 CPU60% 上线发布标准:无P0bug,later率低于20% 关键点: ü 测试的自我评估 ü 自动化统计,分析,报告,评分 ü 业务质量和容量预测 DevOpsDays 2017·上海站
31. 360现有质量管理、效率、流程兼顾的特点 两种模式:公共独立团队;业务线独有团队 ü 公共独立团队:业务稳定,人员发展有保障,业务第 三方监管,技术输出有保障,业务深入有限,管理成 本高。 ü 业务线独有团队:管理简单,人员发展无保障,容易 被业务吞没。 关键方法: • 工程师技术+业务综合发展 • 半雪藏技术输出 • 固定成本技术推进 • 共享资源池 DevOpsDays 2017·上海站
32. 目录 1 发展阶段和心得 2 测试体系设计及构建的拆解 3 困难与挑战 4 主干回顾及思路梳理 DevOpsDays 2017·上海站
33. 需要解决的问题 DevOpsDays 2017·上海站
34. 经历过的困难 ◇ 测试团队的初期事情杂 ◇ 业务压力大 ◇ 测试技术空白 ◇ 研发技术的不断挑战 ◇ 人力紧缺 ◇ 人的能力跟不上需求变化,需要具备合适技术能力的 业务增长速度快,测试技术推进受尽考验 ◇ 快速找到适合当前业务的效率最高的测试方法 DevOpsDays 2017·上海站
35. 目录 1 发展阶段和心得 2 测试体系设计及构建的拆解 3 困难与挑战 4 主干回顾及思路梳理 DevOpsDays 2017·上海站
36. 建立完整体系的关键方法流 1. 分析公司,团队所处阶段 2. 制定合适的文化 3. 制定适应环境的测试流程 4. 构建人才模型,组团队 5. 接入核心业务,分析并解决核心质量需求,发掘当前质量目标 6. 制定合适的测试策略和测试手段 7. 精英化团队的业务构成和人员构成 8. 产品化质量流程 9. 快速复制到其他业务需求 10.找到公司对价值的定义 11.用结果说话 12.将质量测试工作与关键价值做关联 13.输出、运营 DevOpsDays 2017·上海站
37. DevOpsDays 2017·上海站 liujin@360.cn
38. 会议 培训 咨询 • 8月18日 DevOpsDays 上海 • 全年 DevOps China 巡回沙龙 • 11月17日 DevOps金融上海 DevOpsDays 2017·上海站 • EXIN DevOps Master 认证培训 • DevOps 企业内训 • DevOps 公开课 • 互联网运维培训 • 企业DevOps 实践咨询 • 企业运维咨询 商务经理:刘静女士 电话 / 微信:13021082989 邮箱:liujing@greatops.com
39. Thanks 荣誉出品 高效运维社区 国际最佳实践管理联盟 DevOpsDays 2017·上海站
40. 想第一时间看到 高效运维社区公众号 的好文章吗? 请打开高效运维社区公众号,点击右上角小人,如右侧所示设置就好 DevOpsDays 2017·上海站