深聊测开领域之:一文搞懂什么是敏捷测试,如何做敏捷测试,建议先收藏再学习。

简介: 深聊测开领域之:一文搞懂什么是敏捷测试,如何做敏捷测试,建议先收藏再学习。

1、引言


小屌丝:鱼哥,在忙呢?

小鱼:昂, 不忙,再看会书。

小屌丝:嘿嘿, 不忙的话, 那帮我讲一讲敏捷测试啊。

小鱼:嗯?前一句你说啥?

小屌丝:帮我讲一讲敏捷测试啊

小鱼:不对,前一句

小屌丝:忙吗?

小鱼:忙啊…

小屌丝:别啊,鱼哥, 我这澡票都准备好了,给我讲明白了, 咱俩就泡澡去。

小鱼:这澡票别过期了,我这就讲一讲敏捷测试。


2、解析敏捷测试


2.1 含义

敏捷测试,即:Agile testing, 也是一种测试。


敏捷测试是遵循敏捷宣言的一种测试实践:


强调从客户的角度,即从使用系统的用户角度,来测试系统;

重点关注持续迭代地测试新开发的功能,而不再强调传统测试过程中严格的测试阶段;

建议尽早开始测试,一旦系统某个层面可测,比如提供了模块功能,就要开始模块层面的单元测试,同时随着测试深入,持续进行回归测试保证之前测试过内容的正确性


2.2 特点


敏捷测试的特点很明显,即:


协作更强


敏捷开发人员和测试人员工作得更加紧密,喜欢更直接的沟通方式而不是通过邮件文档这种一来一回反反复复的沟通模式

周期更短


需求验证或测试的时间不再是按月来计算,而是按天甚至按小时计算。用户验收测试在每个sprint的结尾都会进行

计划更灵活


敏捷测试也需要拥抱变化,测试计划不再是一成不变的文档,而会根据业务价值交付的顺序进行灵活的调整

高效的自动化


相比传统测试,自动化在敏捷测试中扮演了极其重要的角色。它是实现快速交付确保质量的一种非常有效的手段


2.3 为什么要进行敏捷测试


敏捷测试除了适应敏捷开发外,还有4点,即:


缩短交付周期

通过采用敏捷测试这种模式,可以契合整个敏捷开发周期,使得整个敏捷开发按照相同而快速的迭代速率和周期交付,让最终用户尽快获取到业务价值;

更早发现测试风险

敏捷测试使得测试人员尽早开始进行测试,尽早的发现系统缺陷或存在的问题,避免所有的问题都堆积在最后的测试阶段形成“Big-bang”的结果,降低整体系统风险;

强调质量属于大家

质量是构建出来的,而不是测出来的。敏捷测试一直强调质量属于每一个人的责任,除了测试之外,开发、产品经理等都有义务对自己的交付件质量负责,这样才能确保项目的整体质量;

化繁为简节省成本

敏捷测试没有要求需要详细的测试计划和测试文档,也没有定义繁复的测试流程及缺陷流程,这种轻量级的管理模式为测试人员减少不必要的负担,节省了工作量及成本。


2.4 敏捷测试与传统测试对比


image.png

2.5 如何迁移敏捷测试


传统的测试,如何迁移到敏捷测试中,或者,传统测试如何完美的平移敏捷测试呢?

有以下几点,即:


组织文化的转变

组织文化是一个被用在覆盖组织方方面面的术语——从基本的认识、态度和价值观到组织特定的语言、知识和技术等;

在敏捷文化中,相比于流程,敏捷更关注人,所以敏捷测试组织是应该是以人为导向、自组织、协作式的一种文化氛围;

组织架构的调整

从项目特点来看,敏捷是属于“强项目型”管理的方式,所以如果以前是属于职能型的组织架构,比如开发人员隶属开发部门,测试人员隶属测试部门,那么在敏捷项目中需要进行调整;

发和测试同属一个项目一个团队,大家的目标是一致的,就是要保证项目的成功。所以测试人员可能会帮开发人员评审代码,开发人员也会帮测试人员进行测试,人员角色的职能变得模糊化;

人员培训与指导

任何新的方法如果没有进行相关培训和了解,会让具体执行人觉得不安而没有底气;

敏捷项目中测试人员在进行测试前也需要接受敏捷知识的培训;

轻流程

敏捷强调轻流程,尽量减少不必要的文档,使得整个开发模式变得轻快;

所以在设计流程和交付件时,需要充分考虑这个特点,尽量简化。当然,少文档不是代表不用写任何文档,一些必要的文档还是需要有的。


2.6 敏捷测试成功因素


针对 Lisa Crispin在《敏捷软件测试:测试人员与敏捷团队的实践指南》中总结了敏捷测试成功的七大关键要素,这里提炼出来以下几点,即:


领导层的支持

任何一个改变要想实施成功,都离不开领导层的大力支持;

从领导层的角度需要提供一个宽松的环境,让整个敏捷测试团队能够形成自组织的模式;

当遇到问题时不是进行追责,而是给予足够的信任和支持,帮助团队度过难关,陪伴团队的成长;

测试人员具备敏捷思维

测试人员需要了解敏捷,掌握敏捷的基本知识和原则,从而才能在整个敏捷体系中更快的融入到敏捷环境中,从而更好的开展整个测试工作;

要有勇于尝试的信心

相比传统测试来说,敏捷测试比较新;

很多测试人员对于新的事物不敢去尝试,做事畏畏缩缩、裹足不前。因此需要测试人员有敢于尝试的决心,不怕做不好,就怕不去做;

只有做了,才知道哪里行哪里不行。然后再根据不足进行优化,从而最终取得成功;

与各方紧密协作

在敏捷项目中,测试人员与其他方的直接沟通会非常频繁;

测试人员不仅需要和开发人员紧密协作,还需要和产品经理甚至是最终用户保持频繁的沟通,使得整个测试更有效率;

自动化

自动化是敏捷测试非常重要的元素;

在敏捷开发这种极短的交付周期内,如果仅仅靠手工测试,则非常难以满足快速发布要求的。所以自动化测试是必不可少的一种手段;

这里的自动化不仅仅只是指单纯的自动化测试,还包括自动化测试如何集成在整个交付管道中,缩减整个交付时间,实现持续集成甚至是DevOps,最终给项目带来价值。


3、总结


看到这里,今天的分享就查不到该结束了。

今天主要针对什么是敏捷测试,进行了详细的分解说明。

在当前互联网环境下,如果还在走传统的测试流程,后期多半会被淘汰了。

记住:敏捷测试→TestOps 才是未来。


目录
相关文章
|
1月前
|
SQL 安全 测试技术
软件测试的艺术:从错误中学习,提升产品质量
本文将探讨软件测试的重要性和如何通过测试来提高产品质量。我们将从软件测试的基本概念入手,逐步深入到不同的测试方法、工具和技术。同时,我们还将讨论如何建立有效的测试策略以及如何处理测试过程中发现的问题。
|
10天前
|
安全 Java 数据库
shiro学习一:了解shiro,学习执行shiro的流程。使用springboot的测试模块学习shiro单应用(demo 6个)
这篇文章是关于Apache Shiro权限管理框架的详细学习指南,涵盖了Shiro的基本概念、认证与授权流程,并通过Spring Boot测试模块演示了Shiro在单应用环境下的使用,包括与IniRealm、JdbcRealm的集成以及自定义Realm的实现。
26 3
shiro学习一:了解shiro,学习执行shiro的流程。使用springboot的测试模块学习shiro单应用(demo 6个)
|
9天前
|
自然语言处理 机器人 Python
ChatGPT使用学习:ChatPaper安装到测试详细教程(一文包会)
ChatPaper是一个基于文本生成技术的智能研究论文工具,能够根据用户输入进行智能回复和互动。它支持快速下载、阅读论文,并通过分析论文的关键信息帮助用户判断是否需要深入了解。用户可以通过命令行或网页界面操作,进行论文搜索、下载、总结等。
22 1
ChatGPT使用学习:ChatPaper安装到测试详细教程(一文包会)
|
17天前
|
测试技术 开发者
vertx的学习总结6之动态代理类和测试
本文是Vert.x学习系列的第六部分,介绍了如何使用动态代理在事件总线上公开服务,以及如何进行Vert.x组件的异步测试,包括动态代理的创建和使用,以及JUnit 5和Vert.x测试工具的结合使用。
14 3
vertx的学习总结6之动态代理类和测试
|
17天前
|
测试技术
软件质量保护与测试(第2版)学习总结第十三章 集成测试
本文是《软件质量保护与测试》(第2版)第十三章的学习总结,介绍了集成测试的概念、主要任务、测试层次与原则,以及集成测试的不同策略,包括非渐增式集成和渐增式集成(自顶向下和自底向上),并通过图示详细解释了集成测试的过程。
37 1
软件质量保护与测试(第2版)学习总结第十三章 集成测试
|
17天前
|
测试技术
软件质量保护与测试(第2版)学习总结第十章 黑盒测试
本文是《软件质量保护与测试》(第2版)第十章的学习总结,介绍了黑盒测试的基本概念和方法,包括等价类划分、边界值分析和因果图法,并通过具体例子展示了如何设计测试用例来验证软件的功能性需求。
49 1
软件质量保护与测试(第2版)学习总结第十章 黑盒测试
|
17天前
|
人工智能 人机交互 数据库
软件质量保护与测试(第2版)学习总结第一章
本文是《软件质量保护与测试》(第2版)第一章的学习总结,概述了软件的特征、分类、软件工程的层次化技术、现代软件开发的变化,以及软件质量的概念和评价体系,包括黑盒、白盒和灰盒测试方法。
28 1
软件质量保护与测试(第2版)学习总结第一章
|
9天前
|
分布式计算 Hadoop 大数据
大数据体系知识学习(一):PySpark和Hadoop环境的搭建与测试
这篇文章是关于大数据体系知识学习的,主要介绍了Apache Spark的基本概念、特点、组件,以及如何安装配置Java、PySpark和Hadoop环境。文章还提供了详细的安装步骤和测试代码,帮助读者搭建和测试大数据环境。
20 1
|
9天前
|
测试技术 Python
自动化测试项目学习笔记(二):学习各种setup、tearDown、断言方法
本文主要介绍了自动化测试中setup、teardown、断言方法的使用,以及unittest框架中setUp、tearDown、setUpClass和tearDownClass的区别和应用。
23 0
自动化测试项目学习笔记(二):学习各种setup、tearDown、断言方法
|
10天前
|
自然语言处理 搜索推荐 关系型数据库
elasticsearch学习六:学习 全文搜索引擎 elasticsearch的语法,使用kibana进行模拟测试(持续更新学习)
这篇文章是关于Elasticsearch全文搜索引擎的学习指南,涵盖了基本概念、命令风格、索引操作、分词器使用,以及数据的增加、修改、删除和查询等操作。
11 0
elasticsearch学习六:学习 全文搜索引擎 elasticsearch的语法,使用kibana进行模拟测试(持续更新学习)