谈谈我理解的测试的核心价值

简介: 测试人员的核心价值     随着公司组织架构的调整,战略调整,产品的实现技术不断变化,现在的测试人员可以说是什么都可以干。     有些人做产品,有些人做平台,有些人做工具......    有些人有点象专职开发,有些人有点象专职运营......      Facebook,google的一些敏捷测试理念中,测试人员应该致力于提出测试解决方案,研究各种测试工具为主,具体的测试执行工作,由coding的开发同学去做。

测试人员的核心价值 

    随着公司组织架构的调整,战略调整,产品的实现技术不断变化,现在的测试人员可以说是什么都可以干。

 

    有些人做产品,有些人做平台,有些人做工具......

    有些人有点象专职开发,有些人有点象专职运营......      Facebook,google的一些敏捷测试理念中,测试人员应该致力于提出测试解决方案,研究各种测试工具为主,具体的测试执行工作,由coding的开发同学去做。

 

    变化后面也有很多不变的,测试手段无外呼白盒测试,黑盒测试,静态测试,动态测试,单元测试,集成测试,系统测试,安全测试,性能测试等等。那些奋斗在一线的测试工程师的工作内容实则没有什么大的变化,访谈的结果是大家觉得自己也没有成就感,工作很累。

 

    这一切都让我迷惑了,很多人象我一样也迷惑了,测试人员的核心价值到底是什么?

    测试人员的职业发展是什么?特别是focus在业务上的测试人员的核心价值是什么?在这里仅表达下我个人的观点,欢迎大家一起拍砖。

 

Ø  核心价值一:测试设计能力

最基本的也是最重要的价值就是测试设计。无论是采用白盒,黑盒,手工还是自动化等不同的方式,精华都在测试设计中。测试设计能力入门容易,做深难,需要耐得住寂寞,不断的学习积累,同时需要的知识面非常广。

 

下面几点可以提升测试设计能力:

1.对产品的熟知程度

2.对用户的了解程度

3.技术实现/依赖产品/中间件/DB设计/缓存机制/安全机制等技术的深入了解程度

4.产品运行环境(包括服务端,客户端,浏览器,系统并发量,吞吐量等)

5.bug回溯(定位/分析)


非常值得一提的是bug回溯,是一项非常有意义的活动。很多公司特别重视线上bug的预防,分析,却忽略了线下bug的回溯。而实际上,大家都有这样的印象,发现bug的不一定是你设计的TC,而是在执行TC时发散的其他测试场景。通过bug原因分析,可以更精准的帮助你识别易出问题的点。而且现在的技术,环境都是多样性的,总会出现一些你意想不到的bug,它的存在一定是有原因的。这些东西需要通过bug回溯不断的积累。

 

Bug回溯  与测试设计形成良性循环

 

Ø  核心价值二:制定测试策略

大家都知道测试是不能穷举的。在有限的人力、时间、资源情况下,如何更快,更全面的覆盖被测对象,是需要策略的。

我记得以前天彤说过,专家级的测试工程师可以对被测对象进行“精准爆破”,非常认同。对于象淘宝这么庞大复杂的系统来说,如果不能做到精确设计,精确测试,为了保障大用户量大数据量的并发下,想最大程度的规避可能出现的风险,让测试同学以眉毛胡子一起抓的方式进行测试就是在劳民伤财。

 

不同产品,不同的团队,产品成熟度,人员的成熟度,所采用技术的成熟度等等,都可能导致测试策略的不同。制定测试策略的过程,就是对当前的项目、团队进行量体裁衣。

 

影响测试策略的因素:

  • 项目类型  如:新产品,完善功能,重构型的,底层升级,数据库升级,不同的项目类型,测试重点也不同,采用的测试工具和测试类型也不尽相同

  • 产品成熟度    主要考虑产品的业务是否稳定,成熟。是属于创新型,试水产品,是否是成熟行业,需求明确稳定等等?

  • 使用研发技术和研发平台    采用新的研发工具,新的研发技术,还是公司成熟的技术,工具,使用什么样的数据库设计,包括产品的设计思想,产品架构等
  • 团队能力及默契度   稳定型团队?新团队?半新半旧,人员技术能力如何?人员特点如何?(特别需要说明的是,通过bug回溯可以发现团队开发或测试人员的技术能力,代码质量,业务掌握情况,逻辑清晰等这些个人特质,针对不同的人可以在测试时做不同的重点验证)
  •  研发模式   采用什么研发模式,传统的瀑布,还是敏捷,迭代等。这种研发模式以往常出现的问题是什么?该模式在该团队的运行是否成熟,稳定?
  • 产品线上运行环境    包括服务端和客户端的运行环境,负载机制,缓存机制,服务器分布等
  • 产品线上并发量,吞吐量等指标    关注目前指标及增长趋势
  • 产品使用用户   使用产品的用户人群众分布?目前的使用满意度如何?用户的计算机使用水平如何?用户反馈的最大问题是什么?用户的使用习惯是什么?竞争产品在用户中的优势是什么?
  • 测试过程保障    上线前测试依赖的环境、数据、技术、平台、工具保障,有现成的,还是需要开发?

测试策略的方面

²  测试类型

²  各种测试类型的测试程度、测试通过/停止标准

²  使用测试技术

²  依赖平台、工具

 

在工作中,大家对一些事情存在一些误区:

1.编码能力   我们不盲目崇拜编码能力,而是随着测试手段不同,测试深入程度不同,需要我们有能力去识别代码中存在的风险,对产品的技术实现有更深入全面的掌握,才能更有针对性的进行测试,所以,我们必须具备编码能力。

2.创新     我们不能为了创新而创新,而是在工作过程中,技术结合业务,为解决实际的问题自然而然的生长出来的新东西。这个创新一定是解决我们工作中的问题或用户的问题的。

3.工具     工欲善其事,必先利其器,随着我们被测试对象的复杂化,多样化,使用技术的差异化,一些常规手段无法测试的内容,一些重复的劳动密集性的事务,需要让工具代替手工去做,自然而然的就会产生工具。所以,我们不是迷信工具,也不是崇拜工具,工具是为我们服务,带来价值的。如果这个工具不能给我们带来价值,就算做一个工具,没有人使用,又有什么意义呢?


在实现测试设计与测试策略制定过程中,我们为解决实际问题自然会生出一些工具,平台,我们要鼓励大家用创新的思维去思考和解决问题,这样的产出是非常有价值的。


相关文章
|
6月前
|
监控 测试技术 API
价值驱动测试尝试
价值驱动测试尝试
40 0
|
2月前
|
测试技术 持续交付 UED
软件测试的艺术与科学:平衡创新与质量的探索在软件开发的波澜壮阔中,软件测试如同灯塔,指引着产品质量的方向。本文旨在深入探讨软件测试的核心价值,通过分析其在现代软件工程中的应用,揭示其背后的艺术性与科学性,并探讨如何在追求技术创新的同时确保产品的高质量标准。
软件测试不仅仅是技术活动,它融合了创造力和方法论,是软件开发过程中不可或缺的一环。本文首先概述了软件测试的重要性及其在项目生命周期中的角色,随后详细讨论了测试用例设计的创新方法、自动化测试的策略与挑战,以及如何通过持续集成/持续部署(CI/CD)流程优化产品质量。最后,文章强调了团队间沟通在确保测试有效性中的关键作用,并通过案例分析展示了这些原则在实践中的应用。
71 1
|
3月前
|
敏捷开发 测试技术 持续交付
探索软件测试的多维价值
【8月更文挑战第8天】本文将深入探讨软件测试在软件开发周期中扮演的角色,揭示其在确保产品质量、优化开发流程、降低维护成本以及提升用户满意度方面的重要性。通过分析测试的不同阶段和策略,我们旨在为读者提供对软件测试全面价值的新见解,并鼓励采取更系统的测试方法以实现软件项目的成功。
|
4月前
|
监控 测试技术 持续交付
自动化测试在软件生命周期中的价值与挑战
本文通过深入分析自动化测试在软件开发过程中的应用,揭示其在提升效率、确保质量和减少成本方面的显著优势。同时,探讨了实施自动化测试时面临的技术复杂性、维护成本和技能缺乏等挑战,并提出了相应的解决方案。文章旨在为软件测试专业人士提供一个关于自动化测试实践的全面视角,帮助他们更好地规划和执行测试策略。
|
5月前
|
前端开发 测试技术
接口测试:Mock 的价值与意义
Mock测试用于替代复杂或不可用的对象,常见于前后端交互、第三方系统及硬件解耦。它不依赖真实数据,节省工作量和联调时间。核心包括匹配规则(决定修改哪个接口)和模拟响应(设计篡改内容以符合测试用例)。
|
6月前
|
测试技术 API Apache
5个关键问题让单元测试的价值最大化
本文讨论的单元测试策略来自于实践中遇到的真实问题,作者总结出了5个关键策略问题并给出了解决之道。
|
6月前
|
算法 测试技术 项目管理
阿里十年总结之软件测试的价值
本文是作者十几年工作经验的总结,也对“软件测试的价值”做个探讨,希望有机会跟团队一起走出当前的周期。
|
6月前
|
存储 SQL 测试技术
通过降本增效,提升测试价值
通过降本增效,提升测试价值
99 0
|
6月前
|
缓存 运维 测试技术
如何让测试用例更有价值
如何让测试用例更有价值
59 0
|
6月前
|
测试技术 持续交付 UED
软件测试的价值
软件测试的价值

热门文章

最新文章