SlideShare une entreprise Scribd logo
1  sur  16
Télécharger pour lire hors ligne
让测试敏捷起来

           2009.12




什么是软件测试?
传统测试视角
Glen Myers:
  测试是为了发现错误而执行程序的过程
  一个好的测试是指很可能找到尚未发现的错误的测试
  一个成功的测试是指发现了至今未发现的错误的测试
Hetzel:
  软件测试是对软件建立信心的过程
  测试是评估软件或系统的品质或能力的一种积极的行
  为
  测试是对软件质量的度量




Rick 和 Stefan(2002):
  测试是为了度量和提高被测软件质量的过程
  测试是对测试件进行工程设计、实施和维护的整
  个生命周期过程
软件测试发展趋势

测试的目标
发现缺陷-》度量质量-》度量和提高质量
对测试的定义
发现缺陷的测试是好测试-》积极的质量度量行
为-》对测试件进行…的整个生命周期




   软件测试中的些许抱怨
软件测试中的些许抱怨




软件测试中的些许抱怨
需求频繁变化




      文档更新不及时



                  没有足够的测试时间



                                  ……




               敏捷宣言

个体与交互 重于 过程和工具
可用的软件 重于 完备的文档
客户协作 重于 合同谈判
响应变化 重于 遵循计划



     http://agilemanifesto.org/
敏捷的核心价值观

简单(Simplicity)
沟通(Communication)
反馈(Feedback)
勇气(Courage)




    Agile为开发带来了曙光
敏捷带来的开发的改变

更少的文档
更快的迭代周期
更频繁的改变(需求或是设计)




   敏捷为测试带来了什么

更少的文档      难以依赖文档设计测试

更快的迭代周期   要求测试在更短时间内完成
更频繁的改变(需求或是设计)

         要求测试更具有探索性和适应性
敏捷测试
简而言之,敏捷测试是指在采用敏捷技术的项目中开展的
测试
同时,敏捷测试也意味着测试遵循敏捷的基本原则,接纳
敏捷的核心价值观
 保持简单
 以任务为导向,而不以过程或是角色为导向
 通过沟通和反馈保证测试能够建立合适的质量标准
 尽可能减少测试周期的时间需求




    敏捷测试中的测试任务

为系统建立不同层次的质量验收准则
 代码层面的单元测试
 模块/接口层面的集成测试
 功能、性能等层面的系统测试
 面向用户的用户验收测试
让开发人员随时可以得到关于代码质量的
反馈
 建立持续构建框架
通过测试驱动开发等方式不断提高代码质
量
建立合适的自动化测试框架以减少测试的
时间投入
建立可见的质量度量体系,让产品和代码
质量反馈持续可见




测试工程师在敏捷测试中可以做什么

获取和明确用户的质量期望
建立合适的系统测试、用户验收测试质量
标准
推进单元测试、开发测试
建立持续构建框架
持续改进自动化测试
保持质量度量结果的可见性
敏捷测试的关键因素

共享质量目标
开发和测试团队共享同样的质量目标,当然也共
享同样的质量责任,每个工程师在测试方面都同
样承担任务
以任务而非角色为重点来安排工作
敏捷测试需要一个紧密联系的开发和测试团队,
因此,不要将任务限定在具体的角色上




保证产品质量度量持续可见
“简单”意味着整个团队的目标是开发客户可用的
软件,如果能让整个团队看到“我们的产品距离
可用标准还有多少”,对敏捷过程来说是非常有
利的
关注产品质量的提升,测试周期的缩短,
而不是仅专注于发现缺陷
在产品中内建可测试性
为产品建立更好的自动化测试不仅仅依赖于测试
工程师的工作,更重要的是,产品本身内建的可
测试性
持续改进自动化测试
随着开发的进行,产品质量的提升,以及对产品
了解程度的加深,自动化测试应该能够提供更大
的覆盖,更好和更快速的验证




        敏捷测试过程管理

测试计划
敏捷测试并不需要为每次迭代准备特别详细的测
试计划文档,但最好能够在测试计划中描述以下
内容
  在本次迭代中哪些内容是需要被测试的
  本次迭代中会安排哪些类型的测试
  测试通过的质量标准是什么
One-page test plan
测试设计
对于每个迭代中新增或是发生变化的功能,敏捷
测试采用探索性测试的方法来设计测试
对于稳定的部分,敏捷测试采用自动化测试的方
式建立可接受的质量度量框架




测试执行
手工测试:新功能和修改功能的了解、验证
Adhoc测试:基于对应用的理解,尝试发现应用
中可能的问题
自动化测试
 不同层次/级别的自动化验证
 安全性测试、Fuzz测试等
 分析、调试、优化现有的自动化测试
产品发布
为达到质量标准的产品进行sign off
发布产品
在产品环境中进行sanity check
设计和实现产品运行监控
为可能的回滚做好准备




反馈与提高
缺陷分析(Bug Taxonomy)
根据应用的结构等已有知识,建立更多纬度的自
动化测试
不断提高产品的可测试性
在整个团队(开发和测试)中分享测试知识
在非敏捷项目中使用敏捷测试技术




   敏捷测试带来的价值

敏捷测试意识
所有工程师对质量具有同等的责任
重要的是目标和任务,而不是过程
重要的不是按照角色来定义工作范围,而是团结
大家完成任务
测试是一个集成在开发过程中的持续行为,而不
是单独的活动
测试工程师的任务清单
与客户沟通,达成一致的质量标准
澄清用户故事(User Story)
估算开发和测试任务
设置接受测试,按照客户要求保证产品质量
帮助进行自动化测试
帮助开发人员生产出具有良好可测试性的代码
建立产品质量反馈




    经过证实的有用的实践

设立产品质量反馈
 建立Dashboard展示不同层次的产品质量
帮助进行自动化测试
 推进开发测试(Developer testing)
 为产品设置可以复用的自动化测试框架
帮助生产具有良好可测试性的代码
 推进单元测试
 帮助进行重构
Q&A

Contenu connexe

En vedette

Fabric - a server management tool from Instagram
Fabric - a server management tool from InstagramFabric - a server management tool from Instagram
Fabric - a server management tool from InstagramJay Ren
 
Cholesky method and Thomas
Cholesky method and ThomasCholesky method and Thomas
Cholesky method and Thomasjorgeduardooo
 
Sustancias clasificadas como cancerigenas
Sustancias clasificadas como  cancerigenasSustancias clasificadas como  cancerigenas
Sustancias clasificadas como cancerigenasKatty Benavides
 
Grandes astrónomos
Grandes astrónomosGrandes astrónomos
Grandes astrónomosaceipdarbo
 
Actividad2;tirant lo blanc
Actividad2;tirant lo blancActividad2;tirant lo blanc
Actividad2;tirant lo blancyoorxs
 
20111128154959288
2011112815495928820111128154959288
20111128154959288bertaa
 
My Favorite technologies
My Favorite technologiesMy Favorite technologies
My Favorite technologiesssmerchek
 

En vedette (20)

NUMERICAL METHODS
NUMERICAL METHODSNUMERICAL METHODS
NUMERICAL METHODS
 
Fabric - a server management tool from Instagram
Fabric - a server management tool from InstagramFabric - a server management tool from Instagram
Fabric - a server management tool from Instagram
 
Materi Kelas dongeng angkatan 5
Materi Kelas dongeng  angkatan 5Materi Kelas dongeng  angkatan 5
Materi Kelas dongeng angkatan 5
 
Materi Kelas dongeng angkatan 5
Materi Kelas dongeng  angkatan 5Materi Kelas dongeng  angkatan 5
Materi Kelas dongeng angkatan 5
 
METHOD
METHOD METHOD
METHOD
 
Cholesky method and Thomas
Cholesky method and ThomasCholesky method and Thomas
Cholesky method and Thomas
 
Gauss jordan
Gauss jordanGauss jordan
Gauss jordan
 
Lu decomposition
Lu decompositionLu decomposition
Lu decomposition
 
NUMERICAL METHODS
NUMERICAL METHODSNUMERICAL METHODS
NUMERICAL METHODS
 
METHOD OF JACOBI
METHOD OF JACOBIMETHOD OF JACOBI
METHOD OF JACOBI
 
Gauss sediel
Gauss sedielGauss sediel
Gauss sediel
 
Sustancias clasificadas como cancerigenas
Sustancias clasificadas como  cancerigenasSustancias clasificadas como  cancerigenas
Sustancias clasificadas como cancerigenas
 
Grandes astrónomos
Grandes astrónomosGrandes astrónomos
Grandes astrónomos
 
Actividad2;tirant lo blanc
Actividad2;tirant lo blancActividad2;tirant lo blanc
Actividad2;tirant lo blanc
 
Upload Logo
Upload LogoUpload Logo
Upload Logo
 
20111128154959288
2011112815495928820111128154959288
20111128154959288
 
TDD e Refactoring
TDD e RefactoringTDD e Refactoring
TDD e Refactoring
 
Presentacion patito
Presentacion patitoPresentacion patito
Presentacion patito
 
My Favorite technologies
My Favorite technologiesMy Favorite technologies
My Favorite technologies
 
Teamooo
TeamoooTeamooo
Teamooo
 

Similaire à 让测试敏捷起来(段念)

Qa engineer training
Qa engineer trainingQa engineer training
Qa engineer trainingychw365
 
2011性能测试技术
2011性能测试技术2011性能测试技术
2011性能测试技术070316
 
達暉資訊 - 2014 教育訓練 - 如何進行負載測試
達暉資訊 - 2014 教育訓練 - 如何進行負載測試達暉資訊 - 2014 教育訓練 - 如何進行負載測試
達暉資訊 - 2014 教育訓練 - 如何進行負載測試Allen Hsieh
 
分布式系统测试实践
分布式系统测试实践分布式系统测试实践
分布式系统测试实践drewz lin
 
Duannian agile
Duannian agileDuannian agile
Duannian agiled0nn9n
 
軟體系統測試簡介
軟體系統測試簡介軟體系統測試簡介
軟體系統測試簡介Wei-Tsung Su
 
績效評核系統 大葉大學-詹翔霖
績效評核系統 大葉大學-詹翔霖績效評核系統 大葉大學-詹翔霖
績效評核系統 大葉大學-詹翔霖文化大學
 
Top100summit 宗刚-全生命周期性能评估体系的实践
Top100summit 宗刚-全生命周期性能评估体系的实践Top100summit 宗刚-全生命周期性能评估体系的实践
Top100summit 宗刚-全生命周期性能评估体系的实践drewz lin
 
Agile Summit Taipei 2019 - Agile Testing Strategy
Agile Summit Taipei 2019 - Agile Testing StrategyAgile Summit Taipei 2019 - Agile Testing Strategy
Agile Summit Taipei 2019 - Agile Testing StrategyJen-Chieh Ko
 
About Usability可用性测试杂谈
About Usability可用性测试杂谈About Usability可用性测试杂谈
About Usability可用性测试杂谈Vinny Wu
 
服务器性能测试介绍
服务器性能测试介绍服务器性能测试介绍
服务器性能测试介绍Paro Yin
 
歡迎加入軟體構築行列
歡迎加入軟體構築行列歡迎加入軟體構築行列
歡迎加入軟體構築行列Chris Wang
 
复件 大型网站性能测试方案的制定与实践
复件 大型网站性能测试方案的制定与实践复件 大型网站性能测试方案的制定与实践
复件 大型网站性能测试方案的制定与实践sharetojsl
 
Part04 软件测试方法论
Part04 软件测试方法论Part04 软件测试方法论
Part04 软件测试方法论aellaw
 
2012上海chinatest演讲 从开发看测试,从测试看开发
2012上海chinatest演讲 从开发看测试,从测试看开发2012上海chinatest演讲 从开发看测试,从测试看开发
2012上海chinatest演讲 从开发看测试,从测试看开发drewz lin
 
2017-refactoring-01-簡介
2017-refactoring-01-簡介2017-refactoring-01-簡介
2017-refactoring-01-簡介Shang-Pin Ma
 
QM-050-品質之意義
QM-050-品質之意義QM-050-品質之意義
QM-050-品質之意義handbook
 
Testing survey
Testing surveyTesting survey
Testing surveyTao He
 

Similaire à 让测试敏捷起来(段念) (20)

UnitTest.pptx
UnitTest.pptxUnitTest.pptx
UnitTest.pptx
 
Qa engineer training
Qa engineer trainingQa engineer training
Qa engineer training
 
2011性能测试技术
2011性能测试技术2011性能测试技术
2011性能测试技术
 
達暉資訊 - 2014 教育訓練 - 如何進行負載測試
達暉資訊 - 2014 教育訓練 - 如何進行負載測試達暉資訊 - 2014 教育訓練 - 如何進行負載測試
達暉資訊 - 2014 教育訓練 - 如何進行負載測試
 
分布式系统测试实践
分布式系统测试实践分布式系统测试实践
分布式系统测试实践
 
Ch09
Ch09Ch09
Ch09
 
Duannian agile
Duannian agileDuannian agile
Duannian agile
 
軟體系統測試簡介
軟體系統測試簡介軟體系統測試簡介
軟體系統測試簡介
 
績效評核系統 大葉大學-詹翔霖
績效評核系統 大葉大學-詹翔霖績效評核系統 大葉大學-詹翔霖
績效評核系統 大葉大學-詹翔霖
 
Top100summit 宗刚-全生命周期性能评估体系的实践
Top100summit 宗刚-全生命周期性能评估体系的实践Top100summit 宗刚-全生命周期性能评估体系的实践
Top100summit 宗刚-全生命周期性能评估体系的实践
 
Agile Summit Taipei 2019 - Agile Testing Strategy
Agile Summit Taipei 2019 - Agile Testing StrategyAgile Summit Taipei 2019 - Agile Testing Strategy
Agile Summit Taipei 2019 - Agile Testing Strategy
 
About Usability可用性测试杂谈
About Usability可用性测试杂谈About Usability可用性测试杂谈
About Usability可用性测试杂谈
 
服务器性能测试介绍
服务器性能测试介绍服务器性能测试介绍
服务器性能测试介绍
 
歡迎加入軟體構築行列
歡迎加入軟體構築行列歡迎加入軟體構築行列
歡迎加入軟體構築行列
 
复件 大型网站性能测试方案的制定与实践
复件 大型网站性能测试方案的制定与实践复件 大型网站性能测试方案的制定与实践
复件 大型网站性能测试方案的制定与实践
 
Part04 软件测试方法论
Part04 软件测试方法论Part04 软件测试方法论
Part04 软件测试方法论
 
2012上海chinatest演讲 从开发看测试,从测试看开发
2012上海chinatest演讲 从开发看测试,从测试看开发2012上海chinatest演讲 从开发看测试,从测试看开发
2012上海chinatest演讲 从开发看测试,从测试看开发
 
2017-refactoring-01-簡介
2017-refactoring-01-簡介2017-refactoring-01-簡介
2017-refactoring-01-簡介
 
QM-050-品質之意義
QM-050-品質之意義QM-050-品質之意義
QM-050-品質之意義
 
Testing survey
Testing surveyTesting survey
Testing survey
 

让测试敏捷起来(段念)