测试系统工程师TSE的职责与培养
测试系统工程师TSE的职责与培养
研发资深顾问 杨学明
如今,国内所有的研发型的公司都有测试部门,无论测试团队大小,都有测试组长,测试经理,测试工程师等头衔,但随着产品和业务的质量要求越来越高,产品的市场竞争越来越激烈,公司领导对产品测试的要求越来越严格,仅靠一个人或一个领域的测试人员很难保证产品质量,如果产品的系统设计一样,测试也需要系统架构师,站在系统的角度对整个产品进行功能或性能测试,这就我们所说的TSE(Testing System Engineer,测试系统工程师),笔者在国内各个大中城市开设公开课和内训、咨询服务的过程中,发现国内的研发创新型企业不但SE缺乏,其实TSE也缺乏。那么TSE究竟是什么?如何培养合格的TSE呢?
首先我们来看看目前华为公司某产品线TSE的职责:
①需求澄清。每个需求在开发前组织开发负责人和测试人员面对面进行需求澄清,确保需求理解达成一致,疑问和分歧点形成的遗留问题和用户确认。
②测试用例设计。需求澄清完成后,TSE设计测试用例,用例设计完毕后组织开发、测试、SE进行用例检视和评审,根据检视和评审结果对用例进行整改,确保用例和原始需求保持一致。
③测试策略制定。每个阶段开始前制定合理的测试策略,主要内容包括老功能抽检、新功能验证,可靠性、稳定性、数据一致性、大容量、升级、UCD体验、资料测试等专项测试。
④测试策略执行监控。和测试经理配合确保测试策略制定的内容均衡的分布到测试周期的每个阶段;定期检查测试执行进展,确保策略能够落地,及时发现测试用例存在的问题并进行整改。
⑤逆向分析。每个测试阶段结束时,TSE必须逆向分析该阶段发现的问题单,识别功能质量薄弱点,和开发、SE等讨论给出针对质量薄弱点的加强措施,并转换为用例,跟踪测试经理将加强措施落地到测试过程中。
⑥重要局点保障。针对局点的特点挑选合适的用例,确保能够满足客户的要求;同时分析特殊场景当前的满足度,增加和修改用例。
以上六点,是一个TSE最典型的职责,由此可见,在产品测试的全局性、系统性、策略性方面,TSE的角色是非常重要的,我们再来看看TSE在整个测试团队组织结构中的位置:

由上图可见,TSE是测试分析设计的灵魂人物,如果团队中缺乏测试系统工程师,会导致大家的测试方案都是零散的,不能统一根据系统设计进行测试方案的设计,测试策略和测试团队的配合方面也会出现问题,甚至会出现测试的“盲区”,很多功能点没人测试,或者测试不到位。
总之,TSE是一个测试组的技术带头人,是测试组成员工作学习的榜样。在测试业务领域,需要负责保证测试组测试分析设计质量,进而保证版本测试质量;负责测试组技术建设的分析和实施。在产品领域,需要负责产品相关关键技术和知识的学习积累,并将产品知识向测试组传递;参与产品分析设计过程,表达测试的声音。在团队组织建设领域,需要主导测试组学习氛围的建设,搞好技术的培训交流,做好测试组在技术问题上的答疑解问;做好测试测试组成员的培养。
那么,如何培养合格的TSE呢?据专业的咨询统计,系统测试工程师的培养是需要很长时间积累的。据有关资料介绍,通过四年的大学教育能够使技术人员获得传统高级测试系统工程师50%的技能,然后经过5年的系统测试工程实践将可以达以80%的技能水平,再经过5年的实践将能够达到100%。在国外很多公司,测试系统工程师比开发人员的要求还要高,当然待遇也相对高一些。我们来看看测试人员的职业通道:

从上图我们可以看到,左边是技术通道,右边是管理通道。如果从一名普通的测试工程师走向测试系统工程师或测试架构师呢?主要从以下三个方面去努力:
1、 测试业务领域:
(1)测试的质量也一样主要是由分析设计阶段的工作来保证,至少在分析设计阶段能将产品测试的重点特性测试哪些点,如何测试,测试需要的资源,工具等等,以及把测试中有难度和有风险的点分析出来,做好相应的研究准备,将工作细化,组织组员一起完成测试设计工作。PTM流程以及一些测试的方法和思想是公司多年测试经验的积累,需要每个TSE都能认真的理解,并在多个项目中自己实践,真正从自己来分析设计产品的角度去分析每个特性,将自己的分析思路以有效的手段记录下来,并与测试成员分享,以及为后续测试设计基线以及经验的传承做好积累。如今敏捷流行,如何在敏捷环境下做好测试设计需要探索和借鉴。
(2)在关注业务的同时,TSE还必须有意识的了解行业在性能,可靠性。可维护性、体验、安全性等专项测试,自动化、测试流程、测试方法方面的动向和成果,结合自己产品的实际,将好的方法和成果运用在自己产品测试过程中,能改进我们测试组的技术,提升我们的效率,引导测试成员在除产品业务之外的测试领域去学习和实践
(3)测试组的技术建设:识别当前产品领域应该学习和掌握的知识点,识别测试组在当前以及未来应对产品测试在技术方法上存在的不足,组织测试组成员有计划的开展学习和研究;TSE需要充分参与测试组的相关评审活动,并以良好的职业素养对待评审任务。
2、 产品领域:
TSE在产品领域应该做到对产品的整体了解,对关键的技术点,关键的业务特性,以及基础的知识自己要学习掌握。在产品开发流程种,需要按照原来PTM以及TR4前测试的要求或者思想在产品前期充分参与产品分析设计过程,保证需求规格的在一定程度上的明确,并且可测,并要敢于表达自己对产品设计的意见和建议。组织好测试组的分析设计活动。
在组织测试组的分析设活动时,TSE需要在测试方案或者其他设计文档种将自己的分析思路清晰的表述出来,并通过讲解,让每个成员知晓和领会,然后进行测试用例的设计。TSE需要保证测试用例评审的投入。
3、 团队组织建设能力和软技能(如领导能力、沟通管理、冲突处理、情绪管理等)
(1)TSE在团队建设中,对团队的学习研究氛围,以及人员培养,以及测试组的士气都起着很重要的作用。TSE通过自己的学习研究,引导带动大家进行业务学习,可以经常开展技术交流活动,将自己的所学介绍给大家,引导大家学习的方向,并促进大家相互分享。TSE需要能在业务方面指导成员,为其提供业务学习上的指导,做好人员的培养。在关键时刻,TSE要能站出来树立测试的威严,也鼓舞大家的士气。
(2)TSE需要培养自身的软技能,如沟通的技巧、冲突处理、情绪管理等方面的能力。测试人员不但需要跟内部的同事沟通协调,而且还要同许多外部的同事沟通,比如开发,设计和质量、人力资源等等,所以TSE需要培养自已的软技能。
注:本文由资深研发管理专家杨学明先生提供。杨学明,清华大学MBA,资深研发管理专家,国内首席测试管理专家,曾服务于华为,阿里巴巴等知识企业,杨老师先后在国内开设测试类公开课100多场,服务内训客户1000多家,为数百家企业提供了研发咨询服务,典型的客户如深圳迈瑞、华立仪表、步步高、英威腾、雷赛智能、埃斯顿、华工科技、中国科学院、电力科学研究院、中国工商银行、重邮信科、从兴电子、浙大网新、联迪商用等。杨学明老师课程以实战为主,以行业标杆企业为牵引,结合国内中小企业研发及测试管理环节的典型案例,深入剖析各种管理疑难问题,深受学员好评!
测试系统工程师TSE的职责与培养的更多相关文章
- 测试系统工程师TSE需要具备的四项能力
文/杨学明 如今,国内所有的研发型的公司都有测试部门,无论测试团队大小,都有测试组长,测试经理,测试工程师等头衔,但随着产品和业务的质量要求越来越高,产品的市场竞争越来越激烈,公司领导对产品测试的要求 ...
- 什么是测试系统工程师(TSE)?
深圳市共创力研发咨询 杨学明/文 TSE(Test System Engineer)简称测试系统工程师,作为系统工程(SE)团队的一员,很多公司目前还没有这样的角色,导致测试部分往往处理弱势,第一,不 ...
- 广州CVTE招聘-测试开发工程师
内推邮箱:keweisheng@cvte.com 地点:广州 公司简介 CVTE成立于2005年,总部位于广州科学城,旗下设有多家独立的子公司,在香港设有全球服务中心,在国内设有21个营销服务中心和近 ...
- 网易云 微专业C++系统工程师
网易云 微专业C++系统工程师 一.学前基础 1.曾经学过某种编程语言(C语言最佳) 2.了解基本的变量.类型.作用域.循环和控制流程:了解基本数据类型(整数.浮点.字符串.数组等) 3.知道如何编译 ...
- 什么是测试开发工程师-google的解释
什么是测试开发工程师-google的解释 “ 软件测试开发工程师[SET or Software Engineer in Test],和软件开发工程师一样是开发工程师,主要负责软件的可测试性.他们参与 ...
- 翻译一篇文章:It's Difficult to Grow a Test Developer(成为测试开发工程师的艰辛)
翻译一篇文章:It's Difficult to Grow a Test Developer(成为测试开发工程师的艰辛) 以下文章是送给来poptest学习测试开发工程师的学员们,很多人想测试工程 ...
- 《Google软件测试之道》测试开发工程师
拖延了将近半年的草稿,断断续续的写完了.之前草草翻看完这本书,关注点主要在TE上,而关于SET的部分则只是浏览,最近后知后觉,又翻出了这本书,重新看了一遍,又有新收获. 就说说Google的SET是如 ...
- 【转】测试开发工程师必备软硬能力&高级测试开发工程师需要具备什么能力?
对于测试的基本知识,可以查看软件测试相关书籍 对于在公司成为一位优秀的测试开发工程师,我觉得下面这篇文章涉及到的是我们需要的,稍微进行改动https://blog.csdn.net/sinat_210 ...
- Poptest学员之当小厨师变成测试开发工程师
没开玩笑,这是我们的真实案例.做培训以来,各行各业转行做测试的学员见得太多了.修车的.客服的.销售的.司机的.医护的.前台的等等.职位虽然不分贵贱,但是薪资却分多少.每个人心中都有让家人和自己过上好日 ...
随机推荐
- 原生js ajax请求
什么是ajax AJAX 是一种用于创建快速动态网页的技术. 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新. 这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新, ...
- 三方面搞定http协议之“请求方法”
我所熟知的请求方法一共有六种: GET 请求指定的页面信息,并返回实体主体. POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件) PUT 从客户端向服务器传送的数据取代指定的文档的内 ...
- Jenkins的一些笔记
公司主要要开发自己的paas平台,集成了Jenkins,真的是遇到了很多很多困难,特别是在api调用的权限这一块,这里,把自己遇到的一些坑的解决方法做一下笔记吧.当然,首先要讲的,就是如何在开启安全的 ...
- SpringCloud实战10-Sleuth
Spring-Cloud-Sleuth是Spring Cloud的组成部分之一,为SpringCloud应用实现了一种分布式追踪解决方案,其兼容了Zipkin, HTrace和log-based追踪, ...
- maven 聚合工程 用spring boot 搭建 spring cloud 微服务 模块式开发项目
项目的简单介绍: 项目采用maven聚合工程 用spring boot 搭建 spring cloud的微服务 模块式开发 项目的截图: 搭建开始: 能上图 我少打字 1.首先搭建maven的聚合工程 ...
- 项目实战3—实现基于Keepalived+LVS的高可用集群网站架构
实现基于Keepalived高可用集群网站架构 环境:随着业务的发展,网站的访问量越来越大,网站访问量已经从原来的1000QPS,变为3000QPS,目前业务已经通过集群LVS架构可做到随时拓展,后端 ...
- 项目详解2—LVS负载均衡详解
一.负载均衡集群介绍 1.集群 ① 集群(cluster)技术是一种较新的技术,通过集群技术,可以在付出较低成本的情况下获得在性能.可靠性.灵活性方面的相对较高的收益,其任务调度则是集群系统中的核心技 ...
- 浅谈SpringAOP
0. 写在最前面 之前实习天天在写业务,其中有一个业务是非常的复杂,涉及到了特别多的表.最后测下来,一个接口的时间,竟然要5s多. 当时想写一个AOP,来计算处理接口花费多长时间,也就是在业务逻辑的前 ...
- 第8章 CentOS包管理详解
8.1 Linux上构建C程序的过程 在说明包相关的内容之前,我觉得有必要说一下在Linux上构建一个C程序的过程.我个人并没有学习过C,内容总结自网上,所以可能显得很小白,而且也并非一定正确,只希望 ...
- multipart upload
org.springframework.web.multipart.MultipartException: Could not parse multipart servlet request; nes ...