测试开发工作内容(测试开发工程师是做什么的)

测试开发工作内容(测试开发工程师是做什么的)

是否直接产生效益?

测试开发的核心职能仍然是测试,测试开发不属于开发岗位。开发直接开发一个产品,做的工作可以直接产生效益,测试开发是验证产品是否符合需求,是否有 bug ,测试开发的工作并未直接产出效益。

测试开发具有测试经验,能熟练使用自动化测试工具,能对开源项目做二次开发,能搭建平台,通过这些技术手段来提升测试效率,保证产品质量。

技术栈的广度和深度?

测试开发的技术广度更好。作为测试,测试基础知识必不可少,如测试类型、测试方法、测试用例编写方法等。做 UI 自动化测试要学习自动化工具的使用、选择开发语言,也要了解前端的知识,如HTML、JavaScript 等。开发平平台需要了解的技术更多,前后端、中间件、数据库、运维等什么都要懂,同时还要了解产品,运营的知识。

开发的技术深度更优。开发的技术栈确定只有,一般不会变化。做后端的就会一直做后端,而且专职做某个特定领域的后端,比如 Java 后端、Php后端。做前端的开发也不会干后端的工作,而是一直深耕自己的专业领域,所以做开发的技术都比较专精。

测试开发技术广度好,并不是说不追求技术深度,测试开发也会选择某个技术栈深入研究,比如自动化测试、持续集成等,很多测试开发大牛也是某技术领域的专家。

开发想要拥有更高的职业天花板,无非就两条路,一条是走管理,一条是走技术专家路线。技术专家考虑的就是整体架构,是系统性的工作。技术专家除了要求技术深度,技术的广度也必不可少。

但本质上,测试开发技术栈还是偏向于广度,开发技术栈追求深度。

职业天花板?

我经历的几家公司,大部分公司测试开发薪资水平比同级别开发的要高。但是要论职业的天花板谁更高?我的答案是,开发。开发的工作更容易出成果,能直接产生效益,更容易受到领导赏识,得到提升。

好多大公司的技术负责人也都开发出身,也有很多著名互联网公司的创始人也都是开发出身,比如:百度的李彦宏,字节的张一鸣,美团的王兴等。

那接下来明确一下简称吧,毕竟这几个名字太像了,中文容易搞混。软件开发工程师(SWE),测试开发工程师(SWT),测试工程师(TE)。

1、SWE也需要做测试的工作,SWE需要编写测试驱动的设计、单元测试、参与构建各种大小规模的测试等(简单说开发其实需要对自己的代码负责,并不是很多人理解的代码写出来扔给SWT和TE去测)

2、SWT也是一个开发者角色,只是工作重心在可测试性和通用测试基础框架上。(SWT也要会写代码,代码要求并不比开发低,他们写代码的聚焦点是测试,PS:以字节为例,大部分的测开是技术序列,代码要求和开发一致,薪资也一致(当时宣讲会听的))

3、SWE和SWT不是敌人(不是一个生产BUG,一个挑刺的),更多是合作伙伴,SWT写代码的目的是可以让SWE测试自己的功能。

4、TE把用户放在第一位来思考,组织整体质量的实践,分析解释测试运行结果,驱动测试执行,构建端到端的自动化测试。(SWT和TE工作有很多交织,SWT更多是要构建测试框架,编写测试工具。TE更多是脚本,测试用例,以及点点点……..,以字节为例,TE对代码的要求会相对较低,但是也需要写代码(宣讲会听的))

5、国内很多大厂的测开其实做的是测试的活,也要很多测开干的就是开发的活,这些都取决于你的组,不是一概而论的。

6、SWT和TE对于知识广度的要求会更高,SWE你也许只需要在一个角度仔细钻研就可以了,SWT和TE则需要你是“万能博士”,正如推荐的那本书的作者所说,招一个好的SWT和TE往往比SWE还难

7、SWT的天花板也许相对SWE会低(毕竟国内的事实是SWT和TE做主程的很少),但是SWT越来越受重视是不争的事实,同时SWT的平均待遇不低

你可能是一个SWT,如果你有以下的特征:

a.你编程时,会内疚的想到还有很多单元测试用例没有完成。随后,你又会考虑各种生成测试代码和验证的方法,而不是手工 编写每个单元测试用例

b.看到编译器警告时会焦虑不安

c.当被要求测试一个产品时,你会打开源码,开始思考需要模拟的东西

d.你心目中领导力是:建立一个伟大的底层单元测试框架,供所有人来使用,或者在测试服务器上每天数百万次的运行

e.当被问到产品是否可以上线时,你可能会说:所有的测试都通过了

你可能是一个TE,如果你有以下的特征:

a.你能在已有的代码段中快速找到错误,迅速理解软件失效的模式,但是并不关心从头编写代码或者做修改

b.你更愿意到一些开源网站上去阅读别人的源码

c.在现实世界里你很愿意和其他人交流

d.你心中的领导力是:扶助其他工程师的创意,用更高数量级规模的应用场景来挑战他们的创意

e.当被问到产品是否可以上线时,你可能会说:我觉得可以了

综上(大概率是这样的,大家别钻牛角尖,没有优劣之说):

代码能力要求:SWE=SWT>TE

知识广度要求:SWT,TE>SWE

沟通能力要求:TE>SWT>SWE

知识深度要求:SWE>SWT>TE

薪资待遇:SWE=SWT>TE(纯粹意义的开发,测开和测试,当然国内很多公司自己都搞不清这几个Title区别)

大家有时间想详细了解或者想从事这个行业的还是希望大家深入阅读一下《How Google Test Software》。

测试开发工作内容(测试开发工程师是做什么的)

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 sumchina520@foxmail.com 举报,一经查实,本站将立刻删除。
如若转载,请注明出处:https://www.dasum.com/175757.html