• 看着别人月入过万,30岁想转入做软件测试,有什么难度?


    我见过很多30岁转行软件测试成功的,也见过软件测试转行失败的。

    说实话,30岁转行需要付出比一般人更加多的努力。

    并且每一步的路都不能走偏。

    30岁了,转行肯定不像才毕业的小年轻那么容易,毕竟你转行要跟社会上已经从事过几年的测试工程师一起竞争。有机会吗?

    答案当然是有了。

    怎么转行?

    这时候就不会像才毕业以及毕业2-3年的小年轻,只需要掌握基础的测试技能就可以了。

    更多的需要结合项目进行实战的技能培训。

    是自己短时间内有别人几年的测试技能和经验。

    这样才在学习完成之后,能够顺利找到自己合适的工作。

    比如,基础的理论知识,我们要结合实际的项目,从需求的分析和需求评审,都要按照企业的真实流程来进行,并且还要了解到需求评审背后的含义,是让开发,测试和产品,多方达成一致。

    评审完成之后,还要熟悉测试计划的编写。

    1. 引言:目的、背景、范围、定义、参考资料

    2. 测试内容:测试功能清单

    3. 测试规则:进入准则,暂停/退出准则、测试方法、测试手段、测试要点、测试工具

    4. 测试环境:硬件环境、软件环境、特定测试环境要求

    5. 项目任务:测试环境,测试设计,测试执行准备,测试执行,测试总结

    6. 实施计划:工作量估计、人员需求及安排、进度安排、其它资源需求及安排、可交付工件

    7. 风险管理

    同时要经过大量的实战,熟练编写各种软件的测试用例。

    并且要结合不同项目熟练的编写测试用例。

    并且在测试用例的执行过程中,发现bug,如何高效的提交bug。输出测试报告

    作为30岁不仅要掌握以上的技能,还要结合项目,去掌握各种自动化测试,数据库,环境部署等等,以及性能测试。

    重点是所有的知识还是要结合项目来切身实战

    我用了五天的时候整理了今年我认为软件测试就业的主流技术栈大纲,由于内容实在太多,我就能弄成了一张长图,如果你需要的话,可以加我下面的卡片,直接管我要。

    第一阶段 测试基础

    测试基础是软件测试最最最重要的部分,只要你是做测试,不管是什么测试,测试的基础、理论知识都是必须学会的。
    最好学到什么程度呢,最好是能够理解,并能够用自己的话给复述出来。
    毕竟面试初级测试的时候,问的问题都是从基础理论上进行考核的。
    那测试基础有哪些内容呢?

    测试的定义、测试的分类、测试的方法、测试的生命周期。
    测试计划、测试方案、测试策略、测试用例的编写。
    BUG的定义、BUG的分类、BUG的六要素、BUG的生命周期。
    测试和开发流程的关系、瀑布流、V字形、W字型(双V)、螺旋型、敏捷等等。
    PDCA、5W2H等分析管理的方法
    质量管理体系CMMI(了解)
    嗯,大概就是以上的内容吧,以上全部都是理论和文档能力、只要你肯背、肯写,都是能独立的掌握的。

    第二阶段 常见的测试工具

    测试工具永远是软件测试人员的得力助手,不能完全依赖工具,但也不能没有工具,在学习软件过程中,要著中软件测试工具的使用,下图覆盖初、中级软件测试工程师所需具备的测试工具,要想学好,下手学习吧。

    混在软件测试职业圈,工具千千万,不可能每个都会用,至少要知道有哪些工具可用,什么时候该用什么工具,每个工具能解决什么问题,然后再深入应用几款工具即可,下面就带大家总结一下。

    测试管理工具

    1. 禅道:简单好用,市场主流,互联网行业居多
    2. Jira:简单好用
    3. QC/ALM:复杂,收费,电信/金融行业使用较多
    4. bugzilla:功能简单
    5. svn:代码和文档管理工具
    6. git:但是多分支管理比svn好

    接口测试工具

    1. Jmeter(开源)
    2. postman
    3. SoapUI
    4. 推荐使用 jmeter 和 postman。

    性能测试工具

    1. loadrunner:大而全,要学精通还是有点难度,重量级工具,过去和现在都是行业老大
    2. jmeter:基于java平台的性能开源测试工具,其实也很强大,而且比较好用
    3. Locust:基于python的一个性能测试工具

    白盒测试工具

    1. junit/testng:java下的单元测试框架
    2. unittest/pytest:python下的单元测试框架
    3. cppunit:跨平台的c++单元测试框架
    4. PhpUnit:Php语言下的单元测试框架
    5. TestBed:一个重量级的白盒测试软件,可以进行单元测试、集成测试、静态测试,军工行业常用
    6. Klockword:静态测试工具,军工行业常用

    持续集成工具

    1. Jenkins:比较常见的一种CI工具
    2. Hudson

    网络测试工具

    1. 以HTTP/HTTPs协议为主,网络测试工具有:
    2. wireshark
    3. fiddler
    4. charles

    app自动化工具

    1. appium:这个应该算是目前最流行的基于app的自动化测试框架了
    2. uiautomator:安卓自动化测试框架,基本上支持安卓的所有事件操作
    3. Monkey:安卓自带的测试工具
    4. Monkey Runner:Monkey改进版,支持自己编写脚本测试,用Python语言
    5. Robotium:一款国外的Android自动化测试框架,用法比较

    web安全测试工具

    1. appscan:算是用的非常多的一款工具了,扫描后能够将绝大部分的漏洞找出来
    2. fiddler:网络抓包工具
    3. burpsuite:暴力破解、抓包工具
    4. skipfish:这是一个轻量级的安全测试工具,处理速度很快,每秒可处理2000个请求。

    第三阶段 代码学习

    好了,学完了以上两个部分,恭喜你,你已经是一个出色的初级测试工程师了。
    接下来,你要考虑你的发展方向了
    是成为一个自动化测试工程师呢?
    还是性能测试工程师呢?
    还是安全测试工程师呢?
    啊!这个问题好难!我也不知道该怎么选。
    反正我啥都会一点,哪个岗位都能去面一面。
    关于方向的选择,看我的这篇文章

    嗯,相信你心中已经有了答案了,那我们继续往下面说。
    这个阶段,我们应该学习代码了,关于编程语言的选择,我推荐Java或者python。
    还有数据库也是必须掌握的!在工具篇的学习里,我认为你已经可以掌握数据库的相关的应用了!
    所以现在各位可以去学习编程语言了,
    不过不用像开发那样,学的那么深入。
    比如Java,只需要学完JavaSE的部分就够你用了。 python的话也是一样的,把基础的部分学完就行了。
    总之前期你两者二选一的学习就OK了。
    啥?你问我学的啥。
    我当然是两种都会啊
    哈哈哈哈哈哈哈,惊不惊喜!意不意外! 

    自动化方向

    等你代码已经基本掌握了,嗯,很好,接下来就要学习各种自动化测试了。

    各种单端测试框架:unittest(python)、pytest(python)、JUnit(java)
    WEB自动化测试框架:selenium(适用于java\python\javascript)
    APP自动化测试框架:appium(适用于java\python\javascript)
    以上的内容,根据你学的语言进行选择。
    appiunm和selenium根据你参与的项目进行选择。
    不过无所谓了,反正迟早都要学会的。
    这部分的教程太多了,你学会了编程的基础后,随便百度,好多博客论坛都有教程。
    而且凭你那时候的水平,你都能轻松的看懂。

    性能方向

    对loadrunner和jmeter的掌握更加的深入。
    可以手写脚本、脱离录制。
    学会了多线程编程、能够手写java或者python、不用工具直接实现压测。
    学习linux,毕竟性能总是和服务器打交道的。
    学习系统架构的相关知识、方便你更容易的分析系统瓶颈。
    说实话、性能方向的提示更难、因为需要掌握的东西太多了。
    性能测试做深入了,基本上就是架构师的水平了。
    可能你现在看着这个性能方向的学习一脸懵逼。
    没关系、等你把上面的编程语言学会了你就不懵逼了。

    安全方向

    渗透测试
    SQL注入
    暴力破解
    脱库
    等等
    其实安全测试基本上偏向于网络攻防了,也就是传说中的黑客了,不过我们都是好人,这个的发展方向就是白帽子。
    推荐知道创宇的学习体系。
    我估计你看到这里就更懵逼了。
    没关系、等你把基础的东西学会就知道我在说啥了。
    毕竟你现在还是一个小白嘛。
    不要去纠结这种小事。

    各位在这个阶段,正常情况都应该是中级测试工程师的水平了。

    第四阶段 架构学习

    前三个阶段学习完成后,各位就应该考虑怎么写代码更合理了。
    怎么去测试更全面。
    怎么才能更好的保障项目的质量。
    我认为,在这个阶段,应该回头重新学习一遍测试基础。
    因为这个阶段的提高是思想、方法的提高了。
    上面讲的都是教你应该怎么做。
    在这个阶段你要自己去发现、为什么要那样做。
    跨过了这个阶段就基本上可以成为专家了。
    学习都是水到渠成的,在这个时候,你应该已经掌握了不少框架了,甚至自己也能开发合适的框架了。
    自动化测试框架、性能测试框架等等。
    已经有了属于自己的一套东西了。
    在群里或者论坛上去装逼、别人都会尊称你一声大佬了。
    可能你也学会了一些其他的技术了,甚至在往全栈等方向跨进了。
    总之,到了这个阶段就没什么学习路线了。

    B站最牛的Python自动化测试框架全栈测试开发实战项目入门到精通,涨薪必备教程!!!

  • 相关阅读:
    高防服务器与高防IP区别
    1w5字详细介绍分布式系统的那些技术方案
    大话C# WPF基础入门和进阶,深入浅出解析系列课程 7 业务字段场景和判断为空实操案例
    java面试基础知识
    Knife4j系列--使用方法
    Cpolar在Linux系统中的应用(网页篇1)
    获取文件上次访问时间
    【译】.NET 7 中的性能改进(十三)
    【luogu P8326】Fliper(图论)(构造)(欧拉回路)
    【GD-1开发板】CH340驱动安装方法
  • 原文地址:https://blog.csdn.net/m0_68405758/article/details/127873438