如何拥有一双善于发现高级问题的眼睛
2020-09-10刘秀丽
刘秀丽
摘要:一个看似偶然的问题也有它的确定的复现方法,发现不了归根结底就是知识不够以致用例覆盖不全。一个看似简单的小功能也有可能为你赢得更高的用户满意度的砝码。本文通过给予能发现这些问题(本文称为高级问题)的人高度的评价来强调提高用例覆盖度的重要性。
关键词:高级问题;测试用例
测试用例覆盖度与产品质量息息相关,测试用例一个测试团队的精华所在,精通测试用例编写是对测试工程师首要的要求。常见通用测试用例基本上己经是每个测试人员必备的能力,那么如何在这方面取得更进一步的成绩呢,我们不妨来探讨一下如何发现一些高级点的问题。
一、何谓高级问题
高级问题是若非具备一定项目经验、多领域的知识、对缺陷的警觉性还有品质至上的工作态度不会那么轻易发现的问题。
例如,通过层层推敲,一个看似圆满的设计,有个很重要的业务矛盾,导致设计全盘推翻重新来做。
又如,一个填表功能完成了新增保存操作,但是却把保存按钮放在了离鼠标最远的地方。对于功能按钮的放置位置也是有明确的设计原则的,对于设计不够规范的项目,测试人员要能发现此类问题,不能以功能实现为标准。
有的测试人员把“问题比较特殊”或者“这类问题不是测试环节负责检查的”做为理由,觉得发现不了情有可原,其实是就是能力不足。在我们团队中普通功能问题大家都能发现,而能发现高级问题的人有只有10%,而高级问题所占总问题比例也不到10%。在我之前的一篇论文中我把测试用例分功能类、业务类、表单类,其中功能类的要占800/s左右、业务类的10%左右(知识说这块的知识,不代表用例编写篇幅的多少),需要用到专业领域知识的测试项不會超过10%。我所说的高级问题它与需要具备特殊领域知识才能编写出的用例并不是一个概念,高级问题存在于每个类型之中。我认为能够从产品规范、功能贴合用户实际需求、能够对产品的发展起到影响的才算是高级问题,能发现高级问题的这些人应该得到更多的晋升机会。
二、重视高级问题的发现有什么好处
1.高级问题都是经验的积累
2.高级问题体现了一种品质至上的觉悟
3.高级问题体现对工作的高度负责
4.高级问题体现专业技术的掌握程度
5.高级问题可能预示了产功能、性能漏洞,越早提出成本越低
三、那么如何能发现高级问题呢
(一)加强经验、技能的积累
软件生命周期中任何一个阶段的工作都有工作原则对工作产物衡量标准,高级问题可以在任何一个阶段提出,测试工程师加强对各阶段工作原则和标准的了解有利于从不同角度发现问题,例如产品设计阶段的《产品设计可用性原则》每一条都可以作为我们发现设计和UI缺陷的依据。
高级问题也会以任何一种测试类型的形式出现。例如功能性的、兼容的、易用性的、性能的、业务的等,所以充分分析每种测试类型所采用的测试用例也是非常重要的。例如,早在2017年7月,Adobe就宜布了要在2020年底终止对Flash的支持,浏览器制造商们纷纷宜布了他们的相应淘汰计划,其中就包括微软。这项举措直接影响了浏览器兼容的支持,测试人员应能够及时获取此通知并及时作出有可能产生的兼容问题的预警,及时应对避免造成损失。
(二)加强培训与分享
经验可以分享、技能可以学习,加强培训是发现高级问题的主要途径。
如果一个测试团队只有10%的人能发现高级问题,那么正确的做法就是让这10%的人做领头羊带领剩下的90%的人,让整个团队都具备这样的能力。
遇到非测试用例测试出来的问题,应该分析总结、是否可以形成新的用例考虑方向加入通用用例库。
如果团队都无此能力,那就应该进行集中的专门的培训。
(三)继续坚持品质至上的原则
测试工作有很多规范与原则,能否持之以恒的遵守工作规范与原则是一种工作态度的表现。
(四)主动调查
关注并学习产品测试新思想、及时更新知识库。拿到项目后主动分析其行业特征、用户特征等,提前做好用例范围预估,及时学习相关的测试方法。
(五)加强风险分析能力
2020年新冠病毒疫情期间中小学全部涌向在线上课平台,各家平台频频告急,我们公司的苏州线上教育中心平台2月7日至3月9日,总请求数为56.7亿次。根据终端统计,约20%为PC WEB,约80%为移动端。按PC WEB端每页面发生约20次请求,移动端每页面发生5~10次请求计算,取平均值的10次请求/页面进行计算,线上教育在此期间的PV值约为5.6亿。为什么我们能够抗住这么大的压力昵?延迟开学在线上课初期我们的项目团队己经对风险进行了预警,研究出台多种处理方案并立刻对风险作出响应,确保学生正常在线听课。如果在一个项目中人人都有能力从各种角度参与风险评估,将会是产品稳健运行、获得最大用户满意度的最强资本。
(六)善于发现需求、提高用户满意度
质量管理专家约瑟夫莫西·朱兰的质量适合使用原理认为质量只要达到用户最低满意度就可以了。但是随着软件行业的蓬勃发展,同类软件太多,用户也越来越挑剔,想要在众多品牌中生存吸引更多的用户,必须从最大程度上满足用户的需求上下功夫。从用户角度测试提出切合用户心理的改进需求是测试类型中一项重要分类。从测试环节过滤一批需求会降低产品发布后由用户自己提出再去改产品所花费的成本。
(七)敢于提问
做事情是熟能生巧,发现高级问题也是从发现普通问题基础上从量变到质变的过程。
四、总结
测试是要发现尽可能多的缺陷。测试用例是测试团队成果精华所在,提高测试用例覆盖度是每个测试团队核心要求。只有提高自我认知、不断发现、积累更多的知识才能逐渐养成一双善于发现问题的眼睛,指导你提交更高级的缺陷,扎紧缺陷的出口,提供高品质的产品。