浅谈软件测试工程师:简单易学拿高薪,热门晋升多元化

311 篇文章 0 订阅
175 篇文章 0 订阅

最近一段时间回复了不少知友对测试工程师所要具备的能力的问答,依据自己多年的工作经验,在此做一个总结分享给大家,如有不足的地方,欢迎在评论区补充。

在谈能力之前,我们先看看软件测试行业的现状,总结一句话:简单易学拿高薪,热门晋升多元化。在这里插入图片描述
软件测试在国内还算是朝阳行业,市场人才缺口,发展多元化,可谓入行之后,随便往哪走都能实现自己人生的小梦想。在这里插入图片描述
这么好的一个行业,是谁都能成功的吗?当然不是,任何一个行业都不可能随随便便成功,我们软件测试也一样,他也需要我们掌握各种特异功能,我们一般谈论的有软实力和硬实力两部分,下面我们就展开来说:

一、测试工程师软实力

至于软实力,除了老生常谈的,需要有良好的沟通力、表达力、主动性、耐心、细心、善于思考、善于总结能力外,我们还需要具备如下的特质。

1、足够大的脑洞

前两年在testin带众测项目的时候,就有这么一个小胖子,他提交的bug总是那么匪夷所思,让人看了之后有一种豁然开朗、咋还可以考虑这个场景的感觉,而且一个项目15个人,人均10个bug左右,但是他每次都能提到40+的bug,你不佩服不行,这种人天生适合做软件测试。在这里插入图片描述
测试工程师面试的时候,经常会遇到这么一个问题:给你一个纸杯能拿到啥就是啥,然后问你该怎么测试?如果你仅仅说功能怎么测试相关的测试点的话,相信你的测试效果不会太好,因为这个题目就是要考察你的脑洞的,脑洞越大,就越符合面试官的预期,针对这个题目给出下面的参考答案,大家可以补充:

功能度:用水杯装水看漏不漏;水能不能被喝到
安全性:杯子有没有毒或细菌
可靠性:杯子从不同高度落下的损坏程度
可移植性:杯子在不同的地方、温度等环境下是否都可以正常使用
兼容性:杯子是否能够容纳果汁、白水、酒精、汽油等
易用性:杯子是否烫手、是否有防滑措施、是否方便饮用
用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细描述
疲劳测试:将杯子盛上水(案例一)放 24 小时检查泄漏时间和情况;盛上汽油(案例二)放 24 小时检查泄漏时间和情况等
压力测试:用根针并在针上面不断加重量,看压强多大时会穿透
2、与开发的沟通上可以有女孩子的嗲、也可以牛皮糖的粘

平时我们有一个更通俗的说法,那就是越不要脸越好。作为测试工程师,和研发在业务上是对立属性的。测试工程师提交的BUG越多,意味着研发工程师工作质量越差,需要返工的工作量也越大,甚至会影响绩效,所以测试工程师有时候很容易得罪研发的,因此,如何督促开发很乐意地去修改你提交的bug很重要。

女孩子在这一方面就很有优势啦,稍微嗲一下,那个开发小哥哥受得了,还不乐颠颠去改bug。
男孩子呢,就要发挥不要脸的属性啦,天天粘着开发呗,不给改,烦死你。
不管与开发的关系怎么样,作为一个团体的共同目标是产品保质保量、按时上线的基本原则是不变的。那我们作为测试工程师,在缺陷的跟踪上就要有自己的原则,比如3级BUG以上一定要改,即使拉下脸与开发工程师闹的不愉快的也要坚定自己的原则。

说到底,又能做事(发现BUG并督促修改),又会做人(该进的不让,该退的绝对给面子,能嗲能粘,最大化消除部门间矛盾)的测试工程师,是十分难得的。

在这里插入图片描述
3、要继承偷懒的优良传统

这里说的偷懒,可不是说大家上班可以玩手机、刷知乎啊,而是要继承工作怎么简单怎么做的优良传统。

比如自动化测试的演变史其实就是测试人员与繁琐测试工作的长期斗争史,是许多代测试人员智慧的结晶,说人话就是“偷懒”,出于“偷懒”的想法,把一些重复性、简单、没有技术含量的手工测试工作交给代码完成。

Jason Huggins在2004年发起了Selenium项目,当时身处ThoughtWorks的他,为了不想让自己的时间浪费在无聊的重复性工作中而编写的JavaScript类库,这就是Selenium最早版本。
在这里插入图片描述

好了,软实力就先写到这,有其他的,大家在评论区回复。

二、测试工程师硬实力

至于硬实力,可以分两大块,一个是技术上的硬实力,另一个就是有一个大专以上的学历文凭,两个缺一不可,不然在这个现实的行业中,会处处碰壁。至于文凭,大家有意识地去提高就好,下面我们重点来说技术硬实力要求。

1、测试基础及环境搭建能力在这里插入图片描述
基础能力这块,基本上计算机专业毕业就没有太大,是软件从业者的基本能力。

软件测试的定义、生命周期、工作流程、需求分析
测试用例的设计、编写、评审
bug的基本知识以及禅道的使用
测试计划、测试报告的编写
linux系统常见指令,及LAMP环境搭建
前端技术基础如H5、js、css、vue.js等
数据库常见增删改查操作
行业知识如金融、电信、互联网等

2、测试常见工具使用在这里插入图片描述
涵盖了功能测试、接口测试、性能测试、web端及app端常见的工具,再补充几个常见的。

常见网络抓包工具:fiddler、charles
常见的自动化测试工具:selenium、RF
常见的接口测试工具:Postman、Jmeter、SoapUI
常见的缺陷管理工具:禅道、Jira、bugfree等

3、自动化测试能力

从事自动化测试的话,首先要从语言开始,至少要熟练使用一到两门的脚本语言,不然Java、Python,VB、Javascript等,现在使用python语言随着大数据、人工智能的崛起,也越来越火。

选择一门脚本语言,建议先从Python入手,可以形成下面的Python技术栈。

基本的语言知识,语法、函数、模块、输入与输出、面向对象编程
脚本编写、标准库、第三方库,外部数据处理
unittest、pytest测试框架、参数化、数据驱动

web端的自动化测试,建议Python+selenium+unittest

selenium安装、元素定位、脚本开发
unitest框架的使用
PageObject设计模式使用
ddt数据驱动测试
kdt关键字驱动测试
移动端APP自动化测试,建议Python+Appium+unittest

appium使用、元素定位、脚本开发
APP控件定位、交互,参数化用例
测试框架封装改造
ios自动化测试

接口自动化测试,建议Python+requests+unittest

接口自动化测试框架request
接口请求构造、断言(json/xml请求、响应断言)
接口报文抓包(浏览器、fiddler、charles等)
代理技术与mock挡板技术
headcookie处理、认证体系

4、再拔高一点

通过几年的项目锻炼,熟练掌握前面的技术要求之后,作为测试工程师,基本上能够拿到30W年薪啦,再掌握后面的技术及行业知识,可以转测试开发或者行业专家、顾问,年薪60W也不是梦想。

性能测试

Loadrunner、jmeter测试工具使用
性能测试脚本的开发、优化
性能测试场景设计
性能测试结果分析
性能测试调优
持续集成/持续开发/docker

jenkins持续集成
Jenkins持续交付
docker容器、docker镜像
docker下测试环境搭建
Java或者Python栈测试开发

java+maven+SpringMVC 的技术栈
Python+django
行业知识深耕,掌握行业特点

互联网行业系统软件特点
金融行业系统软件特点
电信行业系统软件特点

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

          视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值