测试的核心价值和能力是什么?

简介:
最近发生的几件事情让我开始思考这个问题--测试的核心价值和能力是什么:

  故事1:前几天帮别的项目组面试招人,候选者是一位拥有8年测试经验的资深人士,简历很漂亮。但交流了一会,我就发现了一个问题,他熟悉的业务和他现在申请的职位的业务相差甚远,但是他除了对业务非常熟悉之外,几乎没有任何思考和总结,对测试,甚至连最基本的概念都模糊不清。不过更触动我的是,和我一起面试的另外一位面试官,面试完后私下给我说,感觉有点不舒服,害怕自己8年后会同这位面试者一样。

  故事2:也是帮别的项目组面试。候选者有4年左右的工作经验,简历很漂亮,已经在大公司里面做测试项目管理了。面试时,他对他当前所在公司的流程,研发管理方法侃侃而谈,全部都很high level。但当我问到他一个在具体的场景下如何识别和处理项目风险,深入问他一些细节的时候,发现怎么聊都深入不下去,原来对他而言,"风险"就等于"项目延期",一旦出现了"项目延期",就发邮件给领导,按照流程去处理就可以了,而且他认为,这就是测试管理,这就是测试策略。

  正是这两个故事,引得我思考这个问题:什么是测试的核心能力?

  作为测试人员,掌握业务是必须的,但是业务知识不等于测试能力,并不是测试的核心价值更不是测试的核心能力。测试流程固然重要,但它只是固化下来的经验、管理的手段和方法。测试流程也不应该是测试的价值,测试的核心。

  那么对测试而言,究竟什么是测试的核心价值?哪些是一位优秀测试应该具备的能力?作为测试者,我们又该如何去提升、突破自己?

  我理解,测试的核心能力有两个:对需求的理解和把握和对产品失效规律的把握。--我们对需求进行分析,得到产品的测试范围,并确定我们的测试目标(验收标准);结合设计,得到产品的测试重点、测试难点,测试深度和广度。同时我们还需要结合我们对产品失效规律的把握,基于风险来进行测试。我们所有的测试,要"测什么","怎么测",都是围绕上面来进行的,我理解这才是最核心的测试技术--定好测试策略。

  认识到测试策略在测试的核心地位后,对我的测试职业发展之路产生了巨大的影响。记得我曾经就职的一家公司会要求测试代表在项目开始写《总体测试策略》,在项目过程中做"缺陷分析",做"产品质量评估"。我一直觉得那玩意很虚,对这些技术不以为然,认为有这些分析思考的时间,不如去看看开发的实现代码,觉得只有编码才是真技术。但自从我被逼着开始试着认真的去写测试策略,去学习怎么把握需求,怎么确定测试的深度和广度,学习怎样做缺陷分析才最有效,怎样评估质量时,我突然好像进入了一个全新的世界,我越来越觉得测试很难,真的很难,但随着不断的思考和总结,我也越来 越感到测试的魅力。

  我也逐渐理解到,对测试来说,核心价值,就是能够利用自己对产品的失效规律的把握,对需求的理解,来预防缺陷,和其他角色一样来保证产品的成功。

  例如,测试参加需求(story)的确定讨论,往往能够从系统、用户的视角提出很多很有价值的问题,能够帮助团队快速澄清问题,达成一致。

  测试参加开发的设计讨论,往往能够从功能之间的联系、非质量属性、容易出现Bug的地方提出很多开发在设计上容易忽视的地方,而这些问题点到了测试阶段,其实都是Bug,这就起到了预防缺陷的作用。

  是不是我们做到这步就够了呢?事实上,"失效规律的把握"也好,"需求的把握"也罢,归结起来还是和具体业务息息相关。测试者一旦换了产品,面对的是一些你不熟悉的业务,你掌握的失效规律,掌握的需求,特别是对用户的深入理解,可能就失效了。所以我们需要把这些知识,从测试的层面再提炼总结一下,成为测试能够"通用"的知识、技能、或者模型。
相关文章
|
6月前
|
安全 Linux 测试技术
提升龙蜥内核测试能力!探究持续性模糊测试优化实践
清华大学软件学院对Anolis OS使用靶向模糊测试方法将测试工作引向修改的代码,进而提高对业务代码的测试能力。
|
6月前
|
监控 测试技术 API
价值驱动测试尝试
价值驱动测试尝试
40 0
|
5月前
|
JavaScript 前端开发 安全
在众多的测试工具中,Cypress以其强大的端到端测试能力和与TypeScript的完美结合,成为了前端开发者的首选
【6月更文挑战第11天】Cypress结合TypeScript,打造前端测试新体验。TypeScript增强代码可读性和稳定性,Cypress提供强大端到端测试,二者结合提升测试准确性和可靠性。通过类型定义、自定义命令和断言,优化测试代码;Cypress模拟真实用户操作、时间旅行功能及内置调试工具,确保应用功能性能。推荐前端开发者使用TypeScript+Cypress进行端到端测试。
72 2
|
2月前
|
测试技术 持续交付 UED
软件测试的艺术与科学:平衡创新与质量的探索在软件开发的波澜壮阔中,软件测试如同灯塔,指引着产品质量的方向。本文旨在深入探讨软件测试的核心价值,通过分析其在现代软件工程中的应用,揭示其背后的艺术性与科学性,并探讨如何在追求技术创新的同时确保产品的高质量标准。
软件测试不仅仅是技术活动,它融合了创造力和方法论,是软件开发过程中不可或缺的一环。本文首先概述了软件测试的重要性及其在项目生命周期中的角色,随后详细讨论了测试用例设计的创新方法、自动化测试的策略与挑战,以及如何通过持续集成/持续部署(CI/CD)流程优化产品质量。最后,文章强调了团队间沟通在确保测试有效性中的关键作用,并通过案例分析展示了这些原则在实践中的应用。
71 1
|
3月前
|
敏捷开发 测试技术 持续交付
探索软件测试的多维价值
【8月更文挑战第8天】本文将深入探讨软件测试在软件开发周期中扮演的角色,揭示其在确保产品质量、优化开发流程、降低维护成本以及提升用户满意度方面的重要性。通过分析测试的不同阶段和策略,我们旨在为读者提供对软件测试全面价值的新见解,并鼓励采取更系统的测试方法以实现软件项目的成功。
|
5月前
|
JavaScript 前端开发 安全
Cypress因其强大的端到端测试能力备受青睐,尤其与TypeScript结合,提升了测试的规范性和准确性。
【6月更文挑战第12天】前端开发日益复杂,测试成为保障代码质量和稳定性的关键。Cypress因其强大的端到端测试能力备受青睐,尤其与TypeScript结合,提升了测试的规范性和准确性。TypeScript使Cypress测试代码更易读、维护,通过类型定义、自定义命令和断言增强测试可靠性。Cypress能模拟真实用户操作,支持时间旅行和高效调试,全面测试前端应用功能。因此,TypeScript+Cypress是前端端到端测试的理想选择。
74 2
|
4月前
|
监控 测试技术 持续交付
自动化测试在软件生命周期中的价值与挑战
本文通过深入分析自动化测试在软件开发过程中的应用,揭示其在提升效率、确保质量和减少成本方面的显著优势。同时,探讨了实施自动化测试时面临的技术复杂性、维护成本和技能缺乏等挑战,并提出了相应的解决方案。文章旨在为软件测试专业人士提供一个关于自动化测试实践的全面视角,帮助他们更好地规划和执行测试策略。
|
4月前
|
固态存储 测试技术 数据库
最新测试揭秘:TDengine 线性扩展能力能否满足你的性能需求?
**摘要:** TDengine 的线性扩展能力通过CPU和磁盘测试得以验证。在CPU测试中,使用TDengine V3.3.0.0和taosBenchmark,随着CPU核数从4增至12,写入性能线性提升,每个CPU增加对应约50W条/秒的提升,保持CPU在瓶颈状态。磁盘IO测试中,使用低速机械盘,增加磁盘数量导致写入性能成比例增长,充分利用新增磁盘IO。测试结果表明,无论CPU还是磁盘扩展,TDengine都能有效利用资源,展示出出色的线性扩展能力。
63 0
|
5月前
|
前端开发 测试技术
接口测试:Mock 的价值与意义
Mock测试用于替代复杂或不可用的对象,常见于前后端交互、第三方系统及硬件解耦。它不依赖真实数据,节省工作量和联调时间。核心包括匹配规则(决定修改哪个接口)和模拟响应(设计篡改内容以符合测试用例)。
|
5月前
|
存储 关系型数据库 MySQL
Baidu Comate Web在线出题能力测试——MySQL出题能力
Baidu Comate Web在线出题能力测试——MySQL出题能力
43 0