软件测试初学者要达到什么水平才能找到一份10K+的工作?

2023-11-01 02:59

本文主要是介绍软件测试初学者要达到什么水平才能找到一份10K+的工作?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

我的读者里有很多 软测 新人,新人是指正在学 测试 的、以及工作时间不长的年轻人,他们经常问我一个问题:

自学到什么程度才能找到一份还不错的测试工作?

今天我就从我自己面试新人的角度来回答一下,我会把面试的知识点进行拆解,希望大家看完文章之后,能从中找到学习 软件测试 的重点。

学习是为了找到工作、拿到 offer,这就有一个公式:

offer = 工作需要的技术栈 + 计算机基础知识 + 项目实践 + 如何找到工作

让我们分别看看公式右边的这些方面具体是什么。

一、工作需要的技术栈

初级测试工程师(薪资7k-10k)↓

1)了解计算机以及软件测试相关的基础知识

a.计算机基础知识

计算机组成部分,操作系统分类,常见的系统架构(B/S和C/S),常用的DOS命令

b.软件测试基础理论知识

软件测试的目的、定义、原则,产品质量模型,软件测试的基本流程

2)常用的Linux命令

在软件测试中,有时候需要我们自己去搭建测试环境,或者是在服务器部署自动化项目。而服务器基本都是使用Linux系统的,所有我们需要掌握一些基础的Linux命令

3)SQL语句

在软件测试中,测试结果的校验或者自动化中的测试数据准备,都会操作数据库来完成。所以对于数据库的最基本的增、删、改、查的SQL语句,需要能够独立完成编写

4) 手工测试用例的编写(最重要)

作为一个软件测试工程师,最基本的要求就是用例编写的能力。如何编写出一份高覆盖率,低重复率的测试用例,是初入软件测试行业应该去不断追求的能力。

5 ) 缺陷的管理

了解在团队中,如何管理测试人员提出的BUG,从而保证项目的BUG能够及时被修复

以上就是初学者大概学习的内容,我是尽量站在初学者的角度来说的,没有写得特别复杂,怕初学者看不懂,没有实质性的帮助。所以我尽量用白话把话说的简单一些,给大家罗列出主要学习的知识点。而是否会自动化测试是初级与中级软件测试工程师的分界线。

中级测试工程师(薪资15k-25k)↓

  • 接口测试相关专业技能

无论是自动化测试还是性能测试,甚至之后往测试开发方向发展,最基础的就是针对接口进行测试。所以要想做好中级软件测试工程师,第一步就是能够完成接口测试

1)接口以及接口测试相关的理论基础知识

包括接口及接口测试的概念,接口测试的原理,接口测试的流程,http协议,Restful接口风格。这些内容都需要有所了解

2)接口工具的使用:Postman和Jmeter

接口测试,可以使用代码,也可以使用工具。通常情况下,接口测试最多还是使用工具来完成.原因无他,"高效"。

3)抓包工具:Fiddler和Charles

在测试过程中,我们为了定位前后端的问题,就会使用抓包工具,查看接口返回的结果。从而定位问题是前端的,还是后端的。这两个工具,我们一般二选一去学习就可以了,因为他们的作用都是一样的。

  • 自动化测试

软件测试中的自动化测试,分为Web UI自动化和移动自动化。自动化测试的目的,主要还是为了降低回归测试的时间。

自动化测试的实现方式,主要还是依赖代码来完成的。所以要能进行自动化测试,首先需要掌握一门编程语言。目前行业主流的自动化测试的编程语言为python和java。我推荐从Python入门,因为对于代码基础为零或者很差的同学,Python的入门相比较Java,要友好很多。我个人就是Python和Java都是自学的,如果可以全天学习,Python也就差不多10天就能入门,然后就可以开始自动化测试方面的学习。

a.Web UI自动化

web自动化测试主要通过代码实现。比如常见的应用有:Python/Java+selenium。

需要学习web测试的流程步骤,因为是基于页面默认人工操作,故而需要对于页面构成需要有一定的基础,比如:HTML+JavaScript+CSS,懂得页面元素的定位,以及常见的定位方式的使用等。如果有接口自动化的基础,那么学习web自动化相对会容易一些。

通过一些相对完整的项目去实战训练,才能够较好的学习并把握web自动化的技能,通过反复的项目训练才能逐步的达到理想的效果。

b.移动自动化

移动自动化测试主要也是通过工具和代码的方式实现。比如常见的有:Python/Java+appium。

移动自动化除了掌握一门编程语言外,还需要学习移动测试的流程步骤,移动基本功能的和web端的基本类型。但是更多的需要测试一些非功能层面的应用,需要学习并使用一些手机模拟器(如:mumu)、第三方工具(如:GT工具)、adb命令、monkey等的使用,学习使用的工具较多,并且需要结合代码一起使用,这就要求学习的知识范围更加广泛,先从工具使用入手。

另外:移动端的应用还需要进行异常测试,对于使用过程中出现网络、信息中断等异常场景的设计,对于手机本身使用过程中的场景结合实际项目训练学习。

高级测试开发工程师(薪资30k-40k)↓

为了提高测试效率,降低测试成本,使测试价值最大化,在具备测试经验、熟练使用测试工具并有一定开发能力的前提下,就可自主开发平台,或对现有开源工具进行二次开发了,这也是测试开发工程师不断进阶的必经之路。下面介绍一下企业金融测试部自主研发的其中几个自动化工具平台,希望对大家在开发测试平台时有一定的启发:

1)源代码监控分析平台。在开源平台sonarqube上定制符合部门需求的规则,通过jenkins集成定时对项目代码质量进行扫描,对单元测试和代码覆盖率进行统计、定制化邮件发送,让开发和测试同学可以发现项目源码的问题。

2)接口自动化平台。在测试工具基础上结合HttpClient、testng等,生成美观的可视化报告,并邮件发送给指定人员,实现接口自动化平台。现已稳定运行数月,并实现接口入参、加密传参及数据库检查点,以及多接口间的出入参依赖,可实现多接口,多场景的组合测试,完美覆盖http、jsf接口的测试,提高了使用者在接口方面的测试效率。

3)UI自动化平台。在测试工具的基础上引入selenium、Jenkins、testng,实现ui自动化平台。现在很多公司都在做ui自动化,通常是用java(或python)加上selenium,跑自动化程序,但这对小白测试人员有一定难度。但在我们平台,测试人员只需要在页面维护相关元素,不用写代码,就可实现ui自动化,并且可以多场景组合测试,方便测试环境更新版本和线上的回归测试,对于元素维护简单方便易上手。

4)测试工具平台。我们在测试工具基础上结合企业金融业务开发了测试工具平台,它是基于springMVC框架的前后端系统。目前总访问次数近三万次,覆盖约十几个业务线系统,单功能访问次数达几百次,在面对复杂业务场景、重复营造和查询数据、频繁业务联调时,可直接让对方访问此平台,一键生成和查询想要的数据,一键实现复杂的业务流程,极大的解脱了研发人员的时间,也避免了不必要的等待时间。

5)BUG监控分析平台。在测试工具的基础上对redmine进行数据提取、处理,通过web页面图表直观展示,可简洁明了的查看bug数据及项目质量情况。

我认为新手在学习的过程中常见的误区:

根据我几年的工作经验来看,零基础的人学好测试基础尤为重要,既然想要进入这行,从开始就给自己搭建一个软件测试工程师发展方向知识架构体系图,让你对于整体的技术栈有明确的全局观,了解自己目前处于哪个阶段,不过对于小白来说,这可能有一点难,所以我首先给大家准备了一套完整的软件测试技术体系图想要获取的同学,点击下面获取。

希望大家能照着这个体系,完成这样一个体系的构建。可以说,这个过程会让你痛不欲生,但只要你熬过去了。以后的生活就轻松很多。正所谓万事开头难,只要迈出了第一步,你就已经成功了一半,古人说的好“不积跬步,无以至千里。”等到完成之后再回顾这一段路程的时候,你肯定会感慨良多。

针对如何自我学习,我给大家提供几个我曾经的小技巧:

①了解如今的市场,都需要掌握哪些主要技术就可以快速就业,目前的企业都需要什么人才,这是你学习的方向和目标。

②系统的学习规划:有一个整体学习大纲,要知道自己每天学习什么,做什么练习进行知识巩固,一个阶段学完后应该完成什么项目实战,进行循序渐进的学习,不可以盲目的瞎学。

③一个大佬的指导:作为一个初学者一定要记得找大佬指导你,即使是花点钱也没关系,只要你能把技术学好就行。自己摸索基本都是弯路,很多人为什么学了一两个月就放弃了,因为他不知道路在哪里,整个人都是迷茫的,自然容易放弃。但如果你有了一个大佬带你,他就会给你做详细的学习计划,给你安排好一切,在整个学习过程中给你解答疑问,你学习起来就会思路清晰,简单效率。

④切记不要开始就只看书,这样比较容易放弃:书上的内容过于生硬,对于零基础的新手非常不友好,看书学习容易放弃。最好的办法还是看视频,动手用键盘敲出来,积累一定理解以后,再回头精读这些大部头书,获得内功提升。总之,原则就是循序渐进,知行合一

另外还有三个网站三个神器,对于初学者来说非常重要。

  • 第一个Google,碰到啥知识问题和错误我都会查这个,找到的回答比某度质量高。但无法访问的问题,对于程序员应该是小case,主要英语需要点底子,方便查文案资料
  • 第二个CSDN,老牌技术网站了,我会白天有些知识没理解的,会去搜别人的技术理解博文,一般都会讲的通俗易懂
  • 第三个TesterHome(测试之家)由众多测试大佬组织和维护的技术社区,致力于帮助新人成长,提高测试地位,推进自身发展。5年前,作为测试新人注册了testerhome账号,在里面学习测试相关的知识,慢慢的对移动互联网测试有了一个整体的认识,后来也将自己工作中学到的东西分享到社区,每一次看到有人从我的帖子中得到解决问题的方法,自己也觉得很高兴,这就是技术分享吧。
学习网站太多了,每个人见解不一样,大家有好的建议可以留言给正在学习的人看到,爱分享爱学习。

⑤找一套完整系统的教程:学习的内容不能过于陈旧,有人学习还在看五年前的视频学习软件测试技术,都是一些已经被企业淘汰的方法,无法满足企业招聘的标准,在面试中很难回答上面试官的问题,最终找不到工作。要找一套最新且系统的学习教程去学习。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

 这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取

这篇关于软件测试初学者要达到什么水平才能找到一份10K+的工作?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/319991

相关文章

工作常用指令与快捷键

Git提交代码 git fetch  git add .  git commit -m “desc”  git pull  git push Git查看当前分支 git symbolic-ref --short -q HEAD Git创建新的分支并切换 git checkout -b XXXXXXXXXXXXXX git push origin XXXXXXXXXXXXXX

嵌入式方向的毕业生,找工作很迷茫

一个应届硕士生的问题: 虽然我明白想成为技术大牛需要日积月累的磨练,但我总感觉自己学习方法或者哪些方面有问题,时间一天天过去,自己也每天不停学习,但总感觉自己没有想象中那样进步,总感觉找不到一个很清晰的学习规划……眼看 9 月份就要参加秋招了,我想毕业了去大城市磨练几年,涨涨见识,拓开眼界多学点东西。但是感觉自己的实力还是很不够,内心慌得不行,总怕浪费了这人生唯一的校招机会,当然我也明白,毕业

husky 工具配置代码检查工作流:提交代码至仓库前做代码检查

提示:这篇博客以我前两篇博客作为先修知识,请大家先去看看我前两篇博客 博客指路:前端 ESlint 代码规范及修复代码规范错误-CSDN博客前端 Vue3 项目开发—— ESLint & prettier 配置代码风格-CSDN博客 husky 工具配置代码检查工作流的作用 在工作中,我们经常需要将写好的代码提交至代码仓库 但是由于程序员疏忽而将不规范的代码提交至仓库,显然是不合理的 所

未来工作趋势:零工小程序在共享经济中的作用

经济在不断发展的同时,科技也在飞速发展。零工经济作为一种新兴的工作模式,正在全球范围内迅速崛起。特别是在中国,随着数字经济的蓬勃发展和共享经济模式的深入推广,零工小程序在促进就业、提升资源利用效率方面显示出了巨大的潜力和价值。 一、零工经济的定义及现状 零工经济是指通过临时性、自由职业或项目制的工作形式,利用互联网平台快速匹配供需双方的新型经济模式。这种模式打破了传统全职工作的界限,为劳动

Smarty模板引擎工作机制(一)

深入浅出Smarty模板引擎工作机制,我们将对比使用smarty模板引擎和没使用smarty模板引擎的两种开发方式的区别,并动手开发一个自己的模板引擎,以便加深对smarty模板引擎工作机制的理解。 在没有使用Smarty模板引擎的情况下,我们都是将PHP程序和网页模板合在一起编辑的,好比下面的源代码: <?php$title="深处浅出之Smarty模板引擎工作机制";$content=

3.比 HTTP 更安全的 HTTPS(工作原理理解、非对称加密理解、证书理解)

所谓的协议 协议只是一种规则,你不按规则来就无法和目标方进行你的工作 协议说白了只是人定的规则,任何人都可以定协议 我们不需要太了解细节,这些制定和完善协议的人去做的,我们只需要知道协议的一个大概 HTTPS 协议 1、概述 HTTPS(Hypertext Transfer Protocol Secure)是一种安全的超文本传输协议,主要用于在客户端和服务器之间安全地传输数据

以太网交换机工作原理学习笔记

在网络中传输数据时需要遵循一些标准,以太网协议定义了数据帧在以太网上的传输标准,了解以太网协议是充分理解数据链路层通信的基础。以太网交换机是实现数据链路层通信的主要设备,了解以太网交换机的工作原理也是十分必要的。 1、以太网协议介绍 1.1以太网协议 以太网是当今现有局域网(Local Area Network, LAN)采用的最通用的通信协议标准,该标准定义了在局域网中采用的电缆类型和信号

JVM工作过程

将JVM工作过程粗略分为5个阶段,包括加载阶段、链接阶段、初始化阶段、执行阶段、回收阶段 其中, (1)加载阶段、链接阶段的解析部分主要由类加载器完成 (2)初始化阶段是由JVM的类加载机制在类加载过程的最后阶段自动触发的。 (3)执行阶段主要由执行引擎负责 (4)回收阶段主要是垃圾收集器(Garbage Collector)负责。 所以,在Java虚拟机(JVM)中,读取字节码文件、解析字节码

平时工作学习重要注意的问题

总体原则:抓住重点,条理清晰,可回溯,过程都清楚。 1 要有问题跟踪表,有什么问题,怎么解决的,解决方案。 2 要有常用操作的手册,比如怎么连sqlplus,一些常用的信息,保存好,备查。

在二叉树中找到两个节点的最近公共祖先(基于Java)

如题  题解 public int lowestCommonAncestor(TreeNode root, int o1, int o2) {//记录遍历到的每个节点的父节点。Map<Integer, Integer> parent = new HashMap<>();Queue<TreeNode> queue = new LinkedList<>();parent.put(roo