小白成长建议(8)-知己知彼-云层

需求管理

需求管理我放在了理论的最后一部分来说,也是我觉得最难的地方。需求管理的难在于它对测试很重要但是又离测试工作很远。在前面我们说过用例,特别是系统测试用例非常依赖于需求文档,因为用例的期望值也就是最终结果,是通过需求来确定的。所以用例是否正确其实很多时候依赖于需求是否正确。

记得有这样一句英文非常的经典:

Are we build the right product?

Are we build the product right?

这里可以很好的说明到底用例重要还是需求重要。优秀的测试人员往往可以保证product right但是没有正确的需求哪里有rightproduct?所以一个产品没有bug但是不好用、不好卖,其实测试也有一定的责任在里面!

那么需求管理里面有什么呢?我这里会从三个角度来谈需求管理:

1.需求开发

2.需求管理

3.测试需求管理

需求开发

每个人都有自己的需求,在看这篇文章的你也会有需求,只是有些需求是显式的有些需求是隐式的。好比经常问朋友“你找对象有啥要求”,回答总是“没啥要求啊,人好就行”,背后的潜台词就是,看的顺眼的!而所谓看的顺眼的就是自己还挑的,没想清楚条件的,那么等想清楚再说吧。

对于软件开发的客户来说也存在着同样的问题。客户想要的东西,和你理解的东西,到你有能力做出来的东西存在着很大的差距,而导致这个问题的关键就是沟通。

1.BA业务分析人员与客户的沟通

2.开发人员与业务分析人员的沟通

3.测试人员与业务分析人员的沟通

4.测试与客户的沟通

在这里存在着实现能力与客户需求的错位及沟通中的技术衔接模糊,最终导致软件会这样或那样的走样。虽然需求开发是业务分析人员的责任,但是作为一个优秀的测试,为了保证质量,那么也需要有相应的能力走在需求分析人员身边,给他们提供技术和业务逻辑上的一些支持。

想要有能力帮助需求分析人员对需求进行测试,那么作为测试的你必须要么走在客户这边能站在客户的角度分析问题,要么你走在技术这端告诉需求分析人员这个东西技术能实现么,实现了怎么验证。

需求开发涉及到很多技术的内容,最直接的就是在于业务描述上。在业务描述上存在的技术包括业务写作(一般就是写文档)和业务建模(常见是指原型设计),这里常用的工具不但包括一些传统的类似UML的建模工具,还需要像Axure这样的原型设计工具,甚至更专业的UI设计工具,来让用户和开发人员更加简单清楚的知道到底要做什么。

需求管理

对于需求管理来说主要管理需求的内容和关系。内容上可以说的不多,但是需求也会有其规定的格式,尽量保证需求信息的完整性。对于需求的关系,这可能是需求管理中比较重要的内容,何为需求的关系,这里先举个列子:

假如在微信朋友圈你发了个需求你需要一只笔,那么会有很多人看到你的需求,也许他们都有条件帮助你,于是都给你寄了一支笔,然后你就发现笔太多了你要么退回笔要么就需要一个笔筒来放笔,接着你再发一个需求给大家,既然大家给我那么多笔,那么再给个笔筒?悲剧可能会继续轮回。

这里的问题在于:

1.需求的落实可能由很多人来实现,如果没有一个控制策略,每个人都来落实一下需求,可能会导致需求被过分实现,并且导致资源的浪费。(送老奶奶过马路做好事的笑话不知道大家还记得不)

2.需求被落实后带来的后续影响如何控制和维护?当一个需求被实现或者被改变,那么所有下级和相关内容都可能受到影响,如何评估影响的范围以及成本是非常重要的。

在大多数公司遇到的问题都和需求管理有关,问题就是在于对于需求的控制能力,这个控制能力指如何有效的评估需求变更所带来的影响(需求管理的能力越强那么对后续研发测试的影响就小,否则要期待相关部门的能力足够强大了)

一般来说需求管理都是将需求层次化的过程,可以简单理解成类似于二叉树的情况。通过这样的线索关系,可以简单的知道每个需求下的子集需求的数量。工具在这方面可以很好的帮助我们管理这些内容,但是工具无法解决本质上的需求对主需求的覆盖比例维护,并不是说一个需求下有多个需求就一定能够完全分解主需求并且有效覆盖主需求,一旦出现需求遗漏,那么就意味着开发会遗漏而同时测试也会遗漏这个点。

所以本质上工具可以帮助有想法的人更好的管理和处理问题,但是工具并不会让没想法的人多做点啥,反而会被表面所蒙蔽,过多的迎合工具的使用。在需求管理上,这并不是一个测试人员需要过多涉及的泥潭,但是却又是一个优秀测试工程师需要尝试的新天地,因为只有走在前面的人才能真正的把握质量,提高质量。

测试需求管理

前面我们谈到了离测试工作距离比较远的需求管理。那么现在我们来聊一下与测试工作息息相关的测试需求管理。

什么是测试需求?大多数小白们都会把测试需求与需求直接划等号。其实不然,测试需求来源于需求,它是测试人员对于需求的理解归纳与总结。或许可以这么说,好的测试需求提取是测试用例框架设计的重要部分,而好的测试用例框架可以有效地提高整个测试工作的执行效率。特别是针对需求变更频繁或者是业务逻辑复杂的项目,效果尤为明显。

如果你要问如何进行测试需求提取,那么我只能说,每一个项目都有其特殊性,需要对应不同的测试需求提取工作。那么究竟该如何做好测试需求管理?除了以上我们在需求管理中所说的方法及使用的工具,需要大家在工作中不断实践总结。通俗的来说,多写测试用例,多修改测试用例,你会渐渐有了用例框架的概念,也就明白该如何做好测试需求提取及管理工作了。

到这一章为止,关于测试的一些基本理论章节就告一段落了,回顾前面说到的关于测试基础、缺陷管理、用例管理、配置管理到今天的需求管理,力争用最简单朴素的语言来介绍关于那些测试中必须要了解的点点滴滴,让正在阅读的你不觉得枯燥也不会觉得太过简单。

在了解了一些基本理论后,在下一章开始,我将会带着大家来看看关于具体做事的一些点点滴滴了。

时间: 2024-11-05 13:37:26

小白成长建议(8)-知己知彼-云层的相关文章

小白成长建议(5) 缺陷与管理-云层

缺陷管理 缺陷管理是最开始也是最基础的测试必备技能.在工作了很多年后仍然会发现大量的测试人员没有办法合理的做好缺陷管理. 在我眼中的缺陷管理包含以下几层概念: 1.缺陷的描述 2.缺陷的定义 3.缺陷的跟踪 4.缺陷的度量分析 也许你觉得作为测试提一个缺陷很简单,但是要提一个好的缺陷其实是非常难的.在这里其实还有个隐藏的属性,叫做缺陷的概念,也就是说什么是缺陷? 一般来说缺陷有两种情况,一个是违反了所谓的规则,还有一种是我们无法接受这样的情况.比如对于美来说,每一个人心目中都有一种对美的定义,你

小白成长建议(4) -从头开始-云层

测试入门 从这里开始我们正式来谈谈关于具体的测试技术,我先列一下目录,以便大家知道后面几章的内容: 1.测试基础及测试方法 2.缺陷管理 3.用例管理 4.配置管理 5.需求管理 6.单元测试 7.集成测试 8.系统测试 9.自动化测试 10.性能测试 这些是我觉得比较基本所需要知道的测试技术,而相关的一些开发.数据库.环境搭建等都应该在这之前基本具备的,我也不专门写点啥来解释了. 首先我们先来谈一下所谓的测试基础和方法. 测试基础 其实一说到测试基础能谈的东西特别多,但是理论性又很强,让我消化

小白成长建议(1)-深思熟虑-云层

前言 在群里有很多人问我这个问题,我是个小白怎么能够进入软件测试这个行业,今年本来我也准备写点关于入门的内容,于是这篇连载就诞生了,估计章节应该会超过20章,每章大概2000字左右,希望大家能够喜欢. 测试工作 在第一章我觉得首先应该谈的就是当你准备进入测试工作的时候,你应该先问自己几个问题: 1.我了解测试工作么 2.我适合测试工作么 3.我能做好测试工作么 因为选择第一份工作是很重要的,当然如果它是你转行之作也是非常重要的,因为只有在一个相关行业有一定的沉淀和积累,那么才能让这个工作变得有成

小白成长建议(7)-蛛丝马迹-云层

配置管理 从某个角度来说,我一直觉得配置管理才是软件开发的最基本内容,注意这里我说的是软件开发的基本,不是测试!那么和测试有啥关系呢? 在解释这个问题前,我还是想先聊点别的,最后大家自然就知道答案了.配置管理到底是啥,简单来说就是版本控制和回溯,虽然这个概念说出来其实不太对,但是对于大多数情况来说确实就是这么回事. 在配置管理这个话题上可以说的很大,但是也可以说的很小,我觉得这么抽象的一个理论还是用个简单的例子来说明吧. 图书馆大家都应该知道,如何保证图书馆内的书被有效的借阅.订正.标记?这个和

小白成长建议 (3)-看书和选书-云层

测试入门 在有了对这个行业的一个了解及需要具备哪些基础后,我们就来谈谈测试入门.那么测试到底是啥,简单说来就是通过一定有效的方式来模拟用户运行软件,证明软件能够达到一定质量水平的手段吧.这里我用的话语很通俗并不规范,其实大家也不用太在意测试的某些概念具体怎么说,总的来说就是better more better,说到这里我想先提一下关于大家总关心的测试入门看什么书的问题. 怎么看书和怎么选书 在谈具体推荐什么书前,我不得不再好好的把怎么看书和怎么选书说一遍.其实在我看来书本无好坏,一本书不可能烂到

小白成长建议(2)-扎实基础-云层

测试基础 不知道在看完上一章之后你是否还有勇气继续选择测试这个工作,或者对这个工作有了一定的了解.那么在进入正题前,抱歉我还是要再做个铺底.就是我们的第二章测试基础. 测试需要基础么? 需要,很需要,甚至我觉得都需要一点点天赋!就像不想做厨师的会计不是好司机一样,测试是一个非常需要跨行业跨领域跨传统思想的工作.想要做好测试,那么你必须啥都会一点,而且为了说服别人,你还得啥都比别人厉害点,这样别人才会服你. 比如你告诉别人乱穿马路是不对的,这是没用的,因为别人不一定明白道理.如果你让他作为司机感受

小白成长建议(6)-测试的灵魂-云层

用例设计与管理 如果前面说的缺陷管理是作为测试最基本的要求的话,那么用例的设计与管理就是真正成为测试工程师的核心技能. 为何说用例设计与管理是测试工程师的核心技能的,而不是大家所关注的什么技术方向.首先技术方向是手段,但是任何的技术手段都是为了测试目的而服务的,如果这个目的出了偏差,那么所有的手段都无法达到预期的目的,或者就算达到了目的也并没反馈你所希望的效果. 例如我们需要测试登月车在月球上能否正常工作,那么你拿什么技术去测试呢?本质上还要换个角度从测试的思路上改变,在地球上模拟一个类似月球的

小白成长建议--小白如何提问

人类最高级的智慧就是向自己或向别人提问——苏格拉底. 我曾经思索过一番有关提问与回答的不同.在我看来,回答是面向过去的,是被动的,是过去式:而提问则是面向未来的,是主动的,是现在式,它往往意味着对现状的不满,意味着有新的发现.千百年来人们都对苹果落到地上习以为常,但牛顿却对此提出了疑问,也就在那一刹那间,一个崭新的世界已经展现在了他的面前.所以说,好的提问往往比答案更有力量,更能给人以启发! 长期在各个QQ群和网站社区上回答问题,久而久之就开始不太淡定,按照某些人的说法就是“你对我这样一个新人怎

小白成长建议(9)-苞丁解牛

单元测试 估计对于小白来说,一提到单元测试就是开发.开发.开发,好深奥.好难.但是我想说,单元测试可能是所有测试中最简单的了,想反系统测试可能是最难的,只是所谓的开发门槛让测试人员有些抵触而已. 为何说单元测试是最简单的内容呢,我们先来看一个例子: 有一个人去医院看病,然后医生问了一下病况后直接让你先去抽血,根据抽血的结果告诉你你是感冒了,给你开了一些感冒药.在这个情况下你觉得医生有多少的技术在里面? 另外一种情况,还是去医院看病,病人刚进来还没说话,医生就已经准确的说出了病人的病情和对应的诊疗