软件测试5未来大发展路线,测试工程师发展偏向

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

1、软件测试的五大职业发展路线

1)功能测试工程师

功能测试也叫黑盒,无需掌握代码能力,只要将以上东西吃透就可以了,如果在金融公司或者业务负责度较高的公司,做久了你你可能对其中的业务逻辑了解的很透彻,未来可以做资深测试工程师。

2)自动化测试工程师

其中UI自动化是投入产出比最低的一个,因为公司都会有大量的功能测试,而且一些体验性功能是无法用UI自动化去简单断言的,所以这个要等到你的团队或者公司规模达到一定时候才可能去做的一个事情。

简单讲,前期做的话无非就是花大量时间去做手动点击下就能解决的问题。涉及到的框架有Robotium、MonkeyRunner、Robotframework+appium以及python直接驱动appium;

其中定位元素是UI自动化的关键,定位元素的工UIAutomator,这个当然得需要你对安卓的布局有所了解以及xpath的定位方法。

初学者建议robotframework+appium这套,易上手。当然了,每个公司可能都会用自己的框架,他们也有对框架自己的理解或者适合哪种框架。

接口自动化是一个投入产出比相对较高的一类,因为可以花费较短的时间集中对大量的接口进行测试,可以大大的节省人力成本,也是很多公司现在主要在去做的一件事情,涉及到的工具有Jmeter、Postman或者Robotframework,各有特点,Jmeter可以适合做接口性能测试。

因为里面会有一些接口传递过程的具体数据如响应时间等;Postman比较轻量级了,简单的断言,就是对接口的是否正确性做判断;

会问了咋又出现了Robotframework,没错,他的原理比较特殊,是借用各种已经封装好的library库,直接用关键字调用库中方法做驱动,因此只要加入了做接口测试用的库,就可以对接口进行自动化测试,当然他也可以做UI自动化,因此是多样性好。

这三种都同时可以借用Jenkins部署自动化,可以集成自动化。

性能自动化也是一个投入产出比相对较高的一类,通过监控测试或者负载测试等等,对app或者程序进行监控数据或者压力测试,通过对数据的收集分析出性能的优劣。

主要会涉及大的工具可能有:LoadRunner,Jmeter,Instruments(ios)以及Emmagee(安卓),后两者基本都是通过对内存、cpu、网路流量、电量以及安装启动跳转的响应时间做实时监控,然后分析数据,给出合理化结论。

3)测试开发工程师

需要比较强的代码能力,会开发其他好用、趁手的工具来提高工作效率,比如数据自动生成、报表自动生成、报bug工具等。与自动化测试合作优化测试框架,提高框架执行case的效率等。然后具有Review代码的能力,可以做白盒测试。

4)专项测试工程师

对某个领域有自己的专长测试,比如sdk测试,安全测试,兼容性测试等,按照流程进行产品测试,调研需求、编写测试用例、测试计划、执行性能测试、编写测试报告、操作说明等。

5)Leader

走管理,需要做的是你个人的综合实力的提升以及管理经验。

2、软件测试未来发展偏向

1)偏向于需求方面的测试人员

在敏捷开发模式下,当测试向前推进时,测试人员会更多地接触到需求分析,从需求分析阶段就尽可能地发现和预防问题。

在这方面,有一些方法,比如行为驱动开发和需求实例化,可以帮助测试人员深化他们的需求分析,扩大他们的影响力。

同时,测试人员还需要对产品的行业和业务知识有更深入的了解,成为业务专家,这样才能让测试分析更有见地。

2)偏向于开发辅助的测试人员

在敏捷开发模式下,开发人员不仅需要编写单元测试代码,还需要编写自动测试代码。

因此,为开发人员提供更快速、准确、全面地添加和执行测试的好工具,是测试人员的发展方向之一。

3)偏向于自动化测试的测试人员

开发人员可以编写自动化测试,测试人员也可以编写自己的测试。

而且,对于自动化测试,测试人员不仅需要分析项目的架构和技术栈,选择最适合的自动化测试框架和编程语言,还需要从头构建自动化测试框架,完善相关的自动化测试支撑内容,如测试数据管理、测试并发执行、测试方法封装、测试脚本设计等。

4)偏向于运维的测试人员

测试不仅需要转移到需求分析阶段,还要覆盖产品交付和在线监测分析,以便快速发现问题,指导下一阶段的开发。

这就需要我们了解更多与环境和监控相关的技术和工具,比如亚马逊AWS、NewRelic、Splunk和PagerDuty。

我们不仅需要熟练运用这些技术和工具,更重要的是,分析从这些技术和工具中获得的数据,形成有意义、有目的的行动计划,帮助开发团队改进。

5)偏向于专项测试能力的测试人员

测试人员不仅需要开发自己的知识,还需要深入具体的技术,这些技术被称为某项技术的测试专家,如前端测试、数据库测试、性能测试、安全测试和可用性测试。

通过这种方式,测试人员不局限于特定的项目,而是成为具有特定测试技术的技术专家,这些技术可以跨越项目。

6)偏向于测试能力建设的测试人员

在前面开发路径的基础上,测试人员可以进一步升华,成为开发团队拥有或提高测试能力、进行测试转化,甚至转化团队的关键指导人物。

而且通常这个测试人员会同时负责多个团队,人数一般都比较少。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

只有不断超越自己的极限,才能看到更广阔的天空;只有拼尽全力,才能创造属于自己的辉煌。永远不要停止前行,成功就在不远处。

每个人都有无限的可能,只要敢于尝试、勇于拼搏,就一定能够创造属于自己的精彩人生。不要被困境所束缚,向着梦想前行,迎接更好的自己。

没有所谓的天才,只有不懈的努力和坚持不懈的追求。只有勇于挑战自我,放手一搏,才能让生命更加灿烂绚丽!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/267705.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SQL里的SWITCH分支语句

declareiintdeclarejvarchar(10)seti1selectjcaseiwhen1then11when2then22when3then33elseotherendprintj

linux 文件夹换所属用户,linux普通用户su root切换提示没有文件或目录的解决方法...

1. 首先进入单用户模式:1). ubuntu :上述情况可以在grub界面选择第二项修复,但没有grub可以参考:1、重启ubuntu,随即长按shirft进入grub菜单;2、选择recovery mode,按"e"键进入编辑页面&#xff…

排序算法[转]

笔者最近学习算法,学了很久也只弄懂了几个排序算法,在这里晒一下下,作为以后参考之用。 一、为什么要研究排序问题 许多计算机科学家认为,排序算法是算法学习中最基本的问题,原因有以下几点: l 有时候应用…

linux 搜索 文件 内容,Linux 文件查找及文件内容查找

使用grep搜索文件内容——快捷、方便(1) 在当前目录下的所有文件的文件内容中查找哪个文件的内容中有findcontents(大小写不敏感,列出findcontents所在文件的所在行)——适合于当前目录下的文件及目录数目比较少,如果查找后列出内容过多,将会…

sonar做代码检测时如何忽略一些代码文件

1、管理员登录sonar 2、如图 一条规则配置一个,不要填写逗号或者分号分割的多个规则 转载于:https://www.cnblogs.com/shengulong/p/8324764.html

回车符和换行符

2019独角兽企业重金招聘Python工程师标准>>> 首先转一段关于回车和换行的历史。 回车和换行 关于“回车”(carriage return)和“换行”(line feed)这两个概念的来历和区别。 在计算机还没有出现之前,有一种…

linux新建好文件后怎么编译,使用autoconf生成Makefile并编译工程的步骤

前言在Linux下,编译和链接需要用Makefile,而写好一个Makefile可不容易,写出一个规范的Makefile更是麻烦。我们可以利用autoconf来生成一个Makefile,尤其在大型工程里,能省去很多麻烦。这里我会用一个工程来说明怎么做&…

前端跨域的那些事

这一节,我们来讲一讲,前端跨域的那些事,主要分成这样的几部分来讲解, 一、为什么要跨域? 二、常见的几种跨域与使用场景 2.1 JSONP跨域 2.2 iframe跨域 2.3 window.name 跨域 2.4 document.domain 跨域 2.5 cookie跨域…

VC++学习(15):多线程

1. 程序,进程,线程 A: 程序是计算机指令的集合,它以文件的形式存储在磁盘上,而进程通常被定义为一个正在运行的程序的实例,是一个程序在其自身的地址空间中的一次执行活动.一个程序可以对应多个进程. 进程是资源申请,高度和独立运行的单位,因此,它使用系统中的运行资源,而…

在linux中500g怎么分区,500G的硬盘,怎么分区比较合理?

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼个人电脑怎么分?希望大家给我规范一下另外,我的/dev/sda2用的是xfs,/dev/sda9用的是reiser4draplaterDrapl ~ $ sudo fdisk -l密码:Disk /dev/sda: 160.0 GB, 160041885696 bytes255 …

CSS宽高背景介绍

本萌新还未毕业,在一家外包公司干了一个月,因烦恼日常琐事任务,深感外包之坑,以及上班路途艰辛,特转战erp实施,继写日常随笔,望来日屌丝逆袭,走上人生巅峰。 若有错误,请…

linux交叉编译生成的是什么,静态链接util-linux – 交叉编译(生成动态链接文件)...

我一直试图交叉编译util-linux for arm但我一直以动态链接的可执行文件结束,我不知道为什么会这样.我的目标是静态的.我在使用类似步骤的不同工具之前进行了交叉编译,并且它一直有效,所以这次我不知道我做错了什么.我正在使用Ubuntu 16.04.以下是我正在运行的命令:e…

维护SAP帮助信息(WEB)

维护SAP帮助信息(WEB) 1、首先进入000 Client ,然后scc4修改000的模式 2、spro 3、 4、 5、注意 服务器为:http://help.sap.com 路径为:saphelp_erp60_sp/helpdata 转载于:https://blog.51cto.com/anhwei/626111

读jQuery之十二(删除事件核心方法)

使用jQuery删除事件(或称解除事件绑定)有三个函数:unbind、die和undelegate。这三个方法都依赖于未公开的jQuery.event.remove(后续使用remove简写)。此为删除事件的核心方法。remove 所作的事情与上一篇提到的.add 刚…

像Excel一样使用python进行数据分析(1)

(虽然是转载,但是是我每块都测试过得,容易出问题的地方我会添加一些自己的经验,仅供参考) 像Excel一样使用python进行数据分析(2) 像Excel一样使用python进行数据分析(3)…

linux svn 自动部署,linux下svn安装和自动部署

liunx系统下安装svn并自动更新到项目中三部分:【1.安装 2.建立svn库 3.配置文件】html查看是否安装了svn 【svn –version】若是安装了svn能够先进行卸载 【sudo apt-get remove –purge subversion】接下来进行安装 【sudo apt-get install subversion】当安装成功…

css优先级

很经典的文章啊 [转]CSS的优先级特性Specificity 如果同个元素有两个或以上冲突的CSS规则,浏览器有一些基本的规则来决定哪一个非常特殊而胜出。它可能不像其它那么重要,大部分案例你不需要担心冲突,但大型而且复杂的CSS文件,或有…

linux编译准备,Linux 下编译指南

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼首先,我们需要获取最新的源码。使用如下命令即可:git clone -b master --depth1 https://github.com/CleverRaven/Cataclysm-DDA.git这条命令会只获取 master 分支下最新的代码。对于普通玩家来说这已经足够…

ServletConfig的详解

一、Servlet的作用 servlet是在servlet容器内运行的程序,有时需要访问容器外部或借助容器访问外部资源。所以可以通过web.xml文件中为某个servlet配置的名称和参数等信息传递给servlet。 这样做的好处是:如果将重要的信息、编码方式等配置信息放在web.xm…

You can't specify target table 'tablename' for update in FROM clause的解决方法

在执行下面的sql时报错 DELETE FROM temp WHERE id IN (SELECT a.id FROM t_user t JOIN temp a ON t.email a.email); 这种写法在sqlserver或者oracle中是支持的,但是mysql目前是不支持的,在mysql中不能同时查询一个表的数据再同时进行删除&#xff0…