敏捷开发(Agile)中的性能测试

与传统开发过程相比,敏捷开发能够更好、更快的提供潜在可发布版本,同时需求的变化对产品带来的冲击也降到了最小。那么如何更好,更有效的在这种快速迭代,快速集成的开发思想下做性能测试也成了大家研究的方向,综合了很多大牛的思想和我对Agile开发的理解,做一个个人总结:

  性能测试的阶段:每个Sprint

  在Sprint Planning之初,首先需要明确需要性能测试的Story,定义可量化的性能测试目标,然后添加性能测试的任务,性能测试是否需要单独创建user story要依产品而定:

  1. 对于即刻发布的版本(以移动应用为例):最好在将性能测试与user story放到一块,这样才能更好地track user story的是否可交付(是否做完性能测试)。

  2. 对于周期长,潜在可发布版本不会立即到用户手中的项目:建议单独为性能测试创建user story。原因之一是这种项目比较庞大,各个user story之间的集成比较复杂,同一个性能测试关联的user story非常多,单独创建能够更清晰,也不会影响user story的commit。

  测试对象:由于一个个的story相对独立,所以测试的对象可以是小到一个个函数或接口,达到一一个端到端的场景(这种情况下需要考虑其他模块或第三方软件对性能的影响)。

  测试的执行:对与单个的性能测试任务,流程基本和传统性能测试相同,但整个流程需要对该story的每一个改动后的可测版本执行:

  1. 定义性能场景

  2. 选取监控指标(可参考Acceptance Criteria)

  3. 模拟负载(可以通过自动化脚本和工具产生)

  4. 收集数据和生成报表。

  验收:主要是参照sprint planning中定义的性能acceptance criteria来评估潜在可交付版本的性能。

最新内容请见作者的GitHub页:http://qaseven.github.io/

时间: 2024-12-24 16:18:29

敏捷开发(Agile)中的性能测试的相关文章

当深度学习遇上敏捷开发,会发生怎样的“化学反应”?

说出来你可能不信,有一种从软件开发领域诞生的思维方式,自诞生以来就一直深远地影响着我们日常的工作和生活.这就是"敏捷方法",即软件开发领域的"敏捷软件开发"(Agile Software Development). 2001年初,十几位来自美国各个软件开发的细分领域的代表们共同签署了一份名为<敏捷软件开发宣言>(Manifesto for Agile Software Development)的文件,标志着这一全新的软件开发方式的诞生(或者也可以称其为一

敏捷开发与项目管理实战之敏捷需求分析

问题背景 敏捷开发中许多活动都是全员参与而非专人参与.需求分析同样也可以是全员参与 的一个活动.这反映了敏捷开发的"个人与交互胜过过程与工具"的价值观.需求分析是在需 求理解的基础上进行的.因此,全员参与需求分析有助于及时发现团队成员对同一个需求理解不一致的 问题,这很大程度上避免了缺陷的引入.另外,也有助于规避人力风险.比如,一个需求的开发者突然 需要请假,其他开发者可以马上顶替他,因为其他人也参与了其负责开发的需求的分析.此外,全员参 与需求分析也有助于全体成员的能力的提升.但问题

在开发流程中嵌入安全测试

ContinuumSecurity创始人Stephen de Vries,在Velocity Europe 2014大会上提出了持续且可视化的安全测试的观点.Stephen表示,那些在敏捷开发过程中用于将QA嵌入整个开发流程的方法和工具都能同样的用于安全测试.BDD-Security是一个基于JBehave,且遵循Given-When-Then方法的安全测试框架. 传统的安全测试都遵循瀑布流程,也就是说安全团队总是在开发阶段的末期才参与进来,并且通常需要外部专家的帮助.在整个开发流程中,渗透测试

Nurun中国敏捷开发(Agile方法)打造网站开发新记录

巴黎欧莱雅在中国的首个电子商务平台的发布只用了破纪录的4个月!魅力惠中国网站打破新纪录-耗时仅5周! 从概念设计到完成开发,理论上需要16-18个月,Nurun中国只用了4个月就做到了.通过使用敏捷开发(Agile方法)配合公司的内部技术,Nurun成功地在极短的时间内为巴黎欧莱雅集团以及旗下奢侈品品牌发布了2个主要平台,而中国的魅力惠网站,通过使用敏捷开发(Agile方法),将原本需要4-5个月的开发时间缩短到了5周. 中国是全球增长最快的奢侈品消费市场,年增长率在20%-30%,位列世界第三

需求采集为小公司敏捷开发中的用户服务

网页制作Webjx文章简介:最近也许是因为大家面试很多,讨论用户需求采集的话题越来越多,好像突然大家一下子都在关注产品的这一流程.当然需求采集的方法很多,众多前辈们也都总结了许多,完全可以参考甚至搬到自己的项目中来实现.这些方法用到大公司大项目上,只要把握的好,数据分析工作做 最近也许是因为大家面试很多,讨论用户需求采集的话题越来越多,好像突然大家一下子都在关注产品的这一流程.当然需求采集的方法很多,众多前辈们也都总结了许多,完全可以参考甚至搬到自己的项目中来实现.这些方法用到大公司大项目上,只

创建标准化代码在VS中实现敏捷开发

标准化程序开发是敏捷开发中的核心内容之一.标准化代码不仅有利于团队之间的合作,也有利于模块之间的集成,节省时间与成本.在VS中也为创建标准化代码做出了很多努力.笔者在这篇文章中就跟大家分享一下,在VS平台中创建标准化代码的注意事项.具体的说,就是五大禁令和四大推荐. 禁令一:不要随意检查代码. 这可能跟用户正常的认识有所差异.有些开发人员可能认为在开发过程中,检查代码是必须的.不过在敏捷开发的模型中,这恰恰是禁止的.因为如果在代码的编写中,不时的检查代码,会浪费开发人员大量的时间与精力.当然,这

利用Rational Team Concert在敏捷开发中进行持续集成

本文将介绍如何利用 Rational Team Concert(RTC)在敏捷开发过程中进行持续集成.详细说明了如 何在 RTC 中通过采取一系列的步骤和脚本开发,来保证持续集成过程的连续性和提高整个项目的效率. 同时还阐述了每一步可以利用的工具和最佳实践,从而使开发过程更加规范化,高效化. 概述 Rational Team Concert(RTC)是 Jazz 产品中最重要的一个,是一个可以任务分解集成,源代码版 本控制,进行自动构建和报告的工具.Jazz 做为 IBM 下一代的软件交付平台,

敏捷开发和测试中重现缺陷和验证缺陷的解决方案(1)

第1部分:部署重现缺陷的环境 简介:本文为系列的第一篇文章,首先简述了系列的主旨和每部分的内容.然后针对敏捷开发和测试中开发人员重现测试人员开出的缺陷这一问题,具体描述了如何用IBM工具Rational Automation Framework以及IBM Workload Deployer快速记录和部署重现缺陷所需的测试环境,从而让开发人员可以更快速准确地获得重现缺陷的环境. 系列背景简介 在敏捷开发的大环境下,产品需要根据用户的需求不断进行变化,产品版本的研发周期越来越短,产品的交付速度越来越

独立软件测试团队在敏捷开发中的几个特别实践

最近读了<测试人与敏捷团队的五个约定>,很是赞同.但发现其并没有紧扣敏捷开发测试的特点,这五个约定在传统开发中已经早有实践,也有相关论述.哪么在敏捷开发的测试方面有没有不一样于传统开发测试的并且是有效的实践? 从敏捷团队的组建上来说,敏捷团队并没有要求安排专门的测试人员,甚至于在某些的方法中不建议清楚的区分开发人员角色和测试人员角色. 本文讨论的是已经存在独立测试团队的情况,如何在敏捷开发中进行高效的测试. 实践1:测试保护开发 通过快速的自动化测试跟进开发,保证新增和修改不破坏已经获得的成果