测试系统工程师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学员之当小厨师变成测试开发工程师
没开玩笑,这是我们的真实案例.做培训以来,各行各业转行做测试的学员见得太多了.修车的.客服的.销售的.司机的.医护的.前台的等等.职位虽然不分贵贱,但是薪资却分多少.每个人心中都有让家人和自己过上好日 ...
随机推荐
- Linux两台主机之间建立信任(ssh免密码)
背景: 有时候我们在两个主机之间复制文件的时候,提示输入密码,很不方便,那如何免密码复制呢?,就是使用通过linux公钥和秘钥,建立双机信任关系. 在整理之前,我先说下ssh免密码的要点 : 你想免密 ...
- 动态代理实现AOP
代理 代理顾名思义:代为处理.不是对目标对象的直接操作,而是通过代理对目标对象进行包装,此时可以在目标对象的基础上添加额外的操作以满足业务需求.图示 分类:动态代理.静态代理. 代理三要素:共同接口. ...
- Spring基础系列-AOP源码分析
原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/9560803.html 一.概述 Spring的两大特性:IOC和AOP. AOP是面向切 ...
- Dubbo 源码分析系列之三 —— 架构原理
1 核心功能 首先要了解Dubbo提供的三大核心功能: Remoting:远程通讯 提供对多种NIO框架抽象封装,包括"同步转异步"和"请求-响应"模式的信息交 ...
- Go Web:自带的ServeMux multiplexer
ServeMux简介 ServeMux扮演的角色是Multiplexer,它用来将将请求根据url路由给已注册的handler.如下图: 上图中为3个路径注册了handler,一个是"/&q ...
- 解读经典《C#高级编程》第七版 Page68-79.对象和类型.Chapter3
前言 新年好,本篇开始进入第三章,<对象和类型>,深刻理解C#的对象,对于使用好.Net类库非常重要. 01 类和结构 从使用角度看,结构和类的区别很小,比如,将结构定义转换为类,只需要将 ...
- shell编程基础(三): 位置参数与shell脚本的输入输出
一.位置参数和特殊变量 有很多特殊变量是被Shell自动赋值的,我们已经遇到了$?和$1,现在总结一下: 常用的位置参数和特殊变量: $0 相当于C语言main函数的argv[0] $1.$2... ...
- Webapi--Webapi 跨域链接
1]创建 WebAPIWebAPI WebAPI,新建 ,新建 ->项目 ->ASP.NET Web >ASP.NET Web >ASP.NET Web >ASP.NET ...
- [转]MySQL修改时区的方法小结
本文转自:https://www.cnblogs.com/mracale/p/6064447.html 这篇文章主要介绍了MySQL修改时区的方法,总结分析了三种常见的MySQL时区修改技巧,包括命令 ...
- surging+CentOS7+docker+rancher2.0 入门部署教程
准备工作 开发环境 Visual Studio 2017 15.5 运行环境 虚拟机CentOS 7+Docker+Rancher 2.0+Consul+RabbmitMQ 项目下载地址 htt ...