- 快召唤伙伴们来围观吧
- 微博 QQ QQ空间 贴吧
- 文档嵌入链接
- 复制
- 微信扫一扫分享
- 已成功复制到剪贴板
自动化
展开查看详情
1 .敏捷测试 崔新焕
2 .敏捷测试中定义 敏捷的价值 敏捷软件开发宣言:个体和交互胜过流程和工具, 可用的软件胜过完备的文档;客户协作胜过合同谈 判,响应变化胜过遵循计划。 敏捷测试意味着什么 在 1~4 周时间完成开发、测试发布一个产品。 敏捷团队中的角色和活动 客户团队、开发团队(包括测试人员)之间的 协作 敏捷测试有和不同 整体团队运作方式
3 .敏捷测试与传统测试
4 . 敏捷是迭代和增量的。这以为着测试人员在每 个代码增量完成时都要测试它。 敏捷团队在工作中密切接受业务,详细了解需 求。专注于交付的价值。 测试反映在编码之前,而不是根据既有的文档 来完成测试用例 敏捷项目中测试人员最重要的区别是快速从测 试中得到反馈。
5 .敏捷测试人员的要求 1 ,熟悉黑盒和 GUI 测试用例,设计测试减轻风 险,帮助业务专家定义需求 2 ,熟练编写简单的 sql 语句、编程语言、开源 测试工具超过一年 3 ,使用基本 unix 命令的能力 4 ,擅长于程序员和业务专家写作。 5 ,最好有基于上下文环境的测试、探索性测试 或场景测试的经验 6 ,拥有融入自组织团队的能力,即与同事协调 确定每天的任务,而不是等待分配来的工作。
6 .敏捷测试象限
7 .面向技术测试 包含单元测试、组件测试。以及性能和压力测 试、安全性测试,非功能行测试 一般常用 TDD 测试驱动开发来完成代码 一般由开发人员来完成。测试人员要避免编写 单元测试。因为测试驱动开发实际上不仅仅是 一个设计活动,他本质上是编写代码的人员同 时也在编写代码前编写测试。 总的要求是编写“可测试的编码”并形成自动化 。 用于面向技术测试的工具箱:源代码控制、构 建工具、构建自动化工具、单元测试工具。
8 .面向技术测试的优点 使团队又了生产更高质量代码的坑内,他们构 成了其他所有类型的测试的基础 相对于后期的 bug 而言,这里的测试速度更快 ,成果更多。 提高了系统的内部质量和可测试性,其中可测 试性为测试人员后续的测试开展提供了便利
9 .面向业务测试 功能测试、用户故事测试、探索测试、场景、 可用性测试、用户验收测试、 a 和 b 测试。 工具包: 激发示例和需求的工具、基于示例的自动化测 试的工具。
10 .自动化 测试自动化是敏捷的核心实践之一,敏捷项目依 赖于自动化。它为团队提供了一种在将速度最大 化的同事还能维持高标准的矿建。原代码控制、 自动构建和测试套件、部署、监控,以及各种脚 本和工具让开发过程乏味无聊,同时还保证了可 靠性并让团队在工作中一直保持最佳状态。 自动化是一个宽泛的话题,其中包含了诸如编写 简单的 shell 脚本、配置会话属性和创建健壮的 自动化测试等任务。 设计测试的技巧直接影响自动化是否能有即时的 回报。优秀的测试设计时间能长生简单的,良好 设计的、持续重构的、可维护的测试。
11 . 自动化可以提供安全网、提供基本的反馈、保持技术债务的最小 化并帮助驱动编码, 恐惧、缺少知识、以前使用自动化的负面经历、频繁改变的代码 和遗留代码往往是自动化的障碍之一。 应用自动化回归测试,在自动化构建过程中运行他们,并修补产 生缺陷的根源,这可以减少技术债务并增加建筑过年的代码。 将回归测试和乏味的手动任务自动化,可以让团队有时间做跟重 要的工作,例如探索测试。 有自动化测试和自动化构建过程的团队可以保持稳定的速度。 若没有自动化的回归测试,手动的回归测试的范畴将会增长,最 终结果可能只是被忽略 由于团队的文化和历史,程序员们可能很难把面向业务的测试的 自动化优先于对新特性的编码。采用敏捷原则和价值可以帮助整 个团队克服测试自动化的障碍。
12 .测试迭代过程 测试人员在发布和主题计划阶段的工作 story 评估、定故事优先级、制定测试计划、 迭代前的准备 积极主动、事先明确、确定缺陷的优先级、测试策 略、明确测试资源。 迭代开始 了解迭代计划细节、确定工作量、高层次的测试和 示例、与客户协作、可测试的 story 编码和测试 驱动开发、评价产品的测试、与程序员的协作、与 客户的交流、完成测试任务、迭代度量、资源、回归 测试、促进沟通、如何选择、处理缺陷
13 . 迭代结束的收尾工作 迭代演示、敏捷回顾(开始、停止、继续以 及关于如何改进的想法)、庆祝成功。 成功的交付 产品构成、为测试计划足够的时间、结束阶 段、客户测试、产品支持、发布产品、可交付 使用的产品、开发后的测试周期。
14 .关键成功要素 使团队整体参与 当整个团队负责测试和质量问题,你会拥有 很多不同的技能集合和经验等级来处理测试可 能发生的问题。测试自动化对于技能高潮的开 发人员来说不是大问题,当测试拥有优先权的 时候,任何人都可以参与测试任务,团队才会 涉及可测试的代码。
15 . 采用敏捷测试测试思维 敏捷测试思维的一个重要部分是不断想办法 改进工作。成功的敏捷测试人员会持续的磨练 技能。读好书、博客和文章以获得新想法和技 能。 应该使用敏捷准则和价值观指导你。不断尝试 最简单的方法来满足测试需要,勇敢地寻求帮 助和实验新想法。关注与产生价值,尽可能多 的直接交流,灵活的对应变化。敏捷开发以人 为中心,我们应该享受工作。
16 . 自动化回归测试 敏捷开发利用测试来知道开发,为了编写代 码是测试通过,需要快速、简单的运行测试, 没有短期反馈周期和安全的回归测试,团队奖 很快陷入技术债务,缺陷不断增加,速度越来 越慢。 自动化回归测试是整个团队的工作。在开始 时很艰苦,应确保在时间、培训、和激励上提 供了足够的支持。
17 . 提供并获得反馈 反馈是敏捷测试的核心价值。敏捷的短期迭代 可以提供持续的反馈以帮助团队正常运转。测 试人员沟通过自动化测试结果、探索性测试的 发现和系统实际用户的观察结果的形式帮助提 供反馈。 一个最有价值的技能是学习如何寻求自己工 作的反馈,询问开发人员是否得到了足够的信 息以理解需求并且能够知道编码,询问客户是 够理解质量标准。
18 . 构建核心实践的基础 持续集成 测试环境 管理技术债务(自动化测试) 增量工作 编码和测试是同一个过程的组成部分 实践之间的协作
19 . 与客户协作 测试人员对敏捷团队的最大贡献之一就是帮 助客户清理需求并设定优先级,通过与其行为 和用户场景的具体示例描绘需求,并把这些示 例转换为可执行的测试。 开发人员、客户、测试人员三方协作。当需 求丢失或者被误解,客户、开发人员和测试人 员需要一起解决问题。
20 . 保持大局观 测试人员应该有大局观,从客户的角度看待问 题。开发人员通常关注于实现当前的故事。