可测试性:软件研发的支点

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 可测试性:软件研发的支点 陈飞
2. 讲师简介 ✓ 独立敏捷交流,OKR教练 ✓ 师从《敏捷宣言》联合作者Arie van Bennekum ✓ 微软特聘软件测试和项目管理培训讲师 请插入 您的照片 ✓ 国际一线对冲基金Pine River Capital Management 担任QA Manager/VP ✓ 国内某大型金融企业任职PMO经理 ✓ 多家金融企业外部敏捷教练 陈飞 敏捷教练 ✓ Atlassian中国用户社区Leader,Jira/Confluence专家 ✓ 敏捷社区“破马张飞” 创始人之一 ✓ OKR社区 核心成员 ee.msup.com.cn
3. 目录 自动化测试:永远的痛 可测试性:自动化测试的奇点 重拾可测试性 如何构建可测试性 可测试性的未来 ee.msup.com.cn
4. 摘要 • 为什么敏捷、DevOps和工程效率在实践中屡屡碰壁? • 可测试性是软件工程中非常重要,但是又常常被忽视的一部分。 • 分享者通过一系列案例结合自己在软件研发行业二十年的实践经验, 为大家幽默风趣的介绍可测试性的意义、历史沿革、基本概念以及 在实践工作中的初步引用。 • 希望能帮助听众快速提高软件研发的实践水平。 ee.msup.com.cn
5. (自动化)测试是永远的痛 ee.msup.com.cn
6. (自动化)测试是永远的痛 研发效能 敏捷 (自动化)测试 ee.msup.com.cn DevOps
7. 真假Scrum ee.msup.com.cn
8. DevOps的全程都是测试 ee.msup.com.cn
9. 可测试性:自动化测试的奇点 测试环境难以复 数据准备时间长 制 API测试,不好找 到分层,耦合度 太高,缺少文档, 难以验证结果 UI测试找不到控 件,界面流程变 化剧烈 ee.msup.com.cn
10. 重拾可测试性 “软件可测试性就是[计算机程序]可以被测试的简 单程度” Jeffrey Voas • “ 软件组件的可测试性或应用程序的可测试性 被视为测试组件或应用程序时遇到的困难程度 的衡量标准 ” • “ 软件可测试性是指选择输入以满足特定结构 测试标准(例如分支覆盖)的轻松性 ” • “ 预测在测试过程中检测到现有故障的可能性 ” ee.msup.com.cn
11. 重拾可测试性 ee.msup.com.cn
12. 微软的SOCK可测试性模型 Simple Observable Control Knowledge ee.msup.com.cn • 简单:简单的组件和应用测试测试起来更容易 (而且花费也更低) • 可见:内部结构和数据的可见性可以让测试程 序准确地判断测试是否通过。 • 控制:如果一个应用程序有阈值,能够设置和 重新设置那些阈值可以简化测试。 • 知识:通过参考文档(需求规格说明书、帮助 文件等)测试人员可以确保结果的正确性。
13. 真实案例 背景:TTS 语音合成 问题:如何测试断句? 下雨天留客天留我不留 下雨/天留客/天留/我不留 下雨天/留客天/留我不/留 ee.msup.com.cn
14. 构建可测试性:需求 需求的可测试性: 用户故事 用户故事的推荐格式: 作为一个<角色>, 我想要<活动>, 以便于<商业价值> ee.msup.com.cn 一个好的用户故事应该 遵循INVEST原则: 独立性 (Independent) 可协商性 (Negotiable) 有价值(Valuable) 可以估算性 (Estimable) 短小(Small) 可测试性(Testable)
15. 构建可测试性:需求 需求的可测试性:BDD Given-When-Then模型 • Given:给定条件 • When:触发事件 • Then:期望结果 ee.msup.com.cn
16. 构建可测试性:始于架构 系统架构设计:横向分层,纵向分业务 基本原则:高内聚,低耦合 每层、每个业务都考虑如何测试 理论上微服务架构天然拥有更好的可测试性 ee.msup.com.cn
17. 构建可测试性:环境与数据 从一开始就考虑测试环境的快速搭建与复制 技术:脚本化、虚拟化 案例:Xblob–mini Xbox Live SaaS服务:沙箱与公共测试环境 容器化:直接发布Dock Imange 从一开始就考虑测试数据的快速搭建与复制 数据架构:分层、提供业务级接口 数据快速生成、脱敏 数据集分层设计,最小数据集→全量数据集 ee.msup.com.cn
18. 构建可测试性:人是决定性因素 ee.msup.com.cn
19. 未来对可测试性的挑战: • AI等不确定性场景 • 大数据始终是挑战 • 5G物联网设备、智能电车的仿真 • 区块链 • 元宇宙 ee.msup.com.cn
20. 总结 质量是奢侈品 可测试性是奢侈品中的奢侈品 用户水平提高,质量要求才会提高 ee.msup.com.cn
21. 关注msup公众号 获取更多工程效能实践案例

Home - Wiki
Copyright © 2011-2024 iteam. Current version is 2.139.0. UTC+08:00, 2024-12-26 14:32
浙ICP备14020137号-1 $Map of visitor$