利用一些碎片时间,终于刷完了这本测试小册《不止测试》
业务价值为驱动的测试
业务价值能够满足客户的要求,并且能给用户节省时间,解决他们的问题,那自然敏捷测试也要以这个为驱动从以下四个维度来优化业务测试:
- 用户行为:我们要把自己想象成终端客户,获取用户习惯以后,从他们的角度在测试中使用产品。
- 比如我所在的项目组是一个基金记账系统,在做私募基金交易的时候会经常几个月提前把客户要赎回的交易做好,我们要考虑这种场景,而不是当月做当月的交易。
- 业务流程:测试的时候经常只着眼于当前story的功能点,而忽略了从全局考虑工作流的流畅和合理性。
- 业务影响:区分哪些是关键业务,哪些是不重要的,这样在发布和衡量bug优先级时能做到心中有数,有的放矢。
- 在时间紧急的回归测试当中,这点尤为重要,可以划定重要的测试范围。
- 自动化测试应该优先业务影响大的模块。
- 业务指标:从系统的业务指标等大方面考察,这个需要从生产环境获取反馈。也就是测试右移动,需要和Ops进行合作。
团队为质量负责
在以前的工作中,总会有一些对测试的质疑,“这个你为什么没测出来?“”这个测试没测彻底“,当然也不是向给测试进行一些推脱。而这一章向表达的是:团队的每个人都对需要质量负责。
那到底什么是质量?
首先测试只能发现缺陷,而质量要通过缺陷预防来实现,也就是说,当产品生产出来的时候,质量就已经在那里了,测试并不是决定质量的人。我们从两个部分来说明质量:
- 内部质量:说的是代码的可读性,系统设计等软件内部的状态,不能被外部人员感知到。
- 外部质量:呈现给用户的心态,是否有缺陷等,它能被客户和测试直接感知到。
那么如何提高质量呢?
做好每个环节的质量保障工作,也就是QA的职责。(自动化流程和手工测试)
谁为质量负责?
整个团队的每个角色。
比如BA,应该在设计初期把握需求分析的准确度和清晰度,让团队都有统一的共识;
比如Dev,需要有良好的代码习惯,他们是内部质量的直接保障者;
比如QA,作为质量保证者,测试需要从整个流程中关注质量,从需求设计开始到验收功能中最重要的一个角色,我们是质量的最后一道关卡;
其他成员等等也可以从自己的工作角色出发,做出一些对提高质量的建议和想法。
关于责任感
因为质量不关乎某个特殊的人,那么每个人都应该对质量负起责任。关于责任感的培养也是很重要的。
- 当问题出现时,我们要用负责人的动机去面对,而不是忽视,找外部借口;
- 培养大家对责任的意识,每次都想象自己能对团队质量做出什么努力;
- 出错不可怕,但是要从错误中学习教训,现在航空的每条规定,都是用从过往的血淋淋的教训学习而来,培养 GROWTH MINDSET。
测试该如何发展?
随着敏捷项目管理的流行,对测试人员也提出了许多新的要求,为了适应变化,测试人员也不得不改变传统观念,向新的理念学习。那么测试可选的方向有哪些呢?
技术方向
- 敏捷测试专家
- 业务能力:熟悉各种主流的业务模型等,能提出很好的测试策略;
- 自动化测试能力:能够使用不同的自动化框架,并且熟悉优越点,提出不同的测试分层策略,熟悉CICD,能配置和运行自动化测试,给快速迭代发版的测试带来效率提升;
- 沟通能力:因为要全程参与整个流程,那么要求很好的沟通和协作能力。
- 高级测试开发专家
- 高级自动化测试,扎实的基础能力,能够对平台进行二次开发,编写自动化工具等等,对技术栈的广度要求高。
- 专项测试专家:比如性能/安全/白盒等某一项测试专精的测试,
- QAOps专家:这个类似与国外的SDET,需要和Devops紧密合作,维护生产和测试环境,并且从生产环境的信息中获取和业务价值有关的价值,优化测试和开发过程,达到优化业务价值的目标。
管理方向
- 测试组长:带领几个测试工程师,那么涉及到一些带领团队和项目规划的知识
- 任务优先级别识别;
- 培养团队成员,能增加他们的能力;
- 沟通协调。
- 测试经理:一般带领一个测试部门
- 技术洞察力,需要对技术的趋势和工具保持洞察力,帮助团队确定测试工具种类来提高团队的效率;
- 风险识别能力;
- 培养团队能力,特别是梯形团队;
- 沟通协调(同上)。
- 项目测试责任人和测试总监,和测试经理类似。
其他方向
- 项目经理
- 团队管理能力,统筹团队资源等;
- 客户关系管理能力:处理和客户的关系;
- 决策能力:重大决策上能做出正确的判断,是团队的指南针。
- PO:建立在很强的业务能力上
- 用户挖掘:挖掘潜在客户要求,用户画像构建等;
- 多维度思考:从多个方面考虑业务价值;
- 抽象能力。
总结
只有拥抱变化,培养终身成长的心态,才能在这个变化的世界里不被淘汰,面对挑战,跨出舒适区,并且勇敢迎接它吧!
《不止测试》电子书下载地址