首页 > 其他分享 >工作两年涨薪40%,揭秘我的学习之路!

工作两年涨薪40%,揭秘我的学习之路!

时间:2024-03-06 10:49:18浏览次数:20  
标签:学习 40% 掌握 Python 学社 涨薪 用例 测试 揭秘

毕业出来工作差不多两年了,就呆过一家公司,主要做功能测试,会自己驱动做些自动化相关的工作,但不想就此止步,所以换了工作,最近刚获得了新 Offer,涨薪幅度 40%+,年薪大概 25w。自己还挺满意的,不论薪资还是福利方面,希望未来能持续进步,不断成长。

关于之前的工作

我是从大二开始接触并学习软件测试相关内容的,毕业后就来到一家做政府采购数字化的公司,这是一家重业务的公司,对代码和自动化的要求并不高。在这里我的测试技能从理论应用到了实践,从生疏到了逐渐熟练,但上限也很明显,在功能测试技能之后,想要再进一步学习和应用,就遇到了不少阻力,经常为学习进度缓慢,学习的内容无法在项目中应用而烦恼。

******遇见霍格沃兹测试开发学社,开始报班学习

在进一步学习测试技能的过程中,我一开始是自学的,买了很多相关的书,测试的,前后端语言的,操作系统的等等等等,但买书如山倒,读书如抽丝,学习效率低,越看越陷入到迷茫之中。

在知乎看测试问答时,看到了学社的《Python 测试开发进阶训练营》,课程内容覆盖的很全面,和我预期想掌握的能力很吻合,又对比了一些其他机构的课程,感觉还是学社的内容覆盖面和深度比较有优势,所以果断就报了名。

因为平常的工作内容已经比较轻车熟路了,所以能抽出比较多的时间来学习,在这几个月的时间里,很感谢学社的老师们和社区的同学们,我学习到了很多的干货知识,也体会到跟着优秀的人学习,果然是进步最快的方式,这也是我认为报班学习最有价值的地方。

学社教授的内容很全面,以录播和直播的形式进行讲解,录播的内容很多,可以慢慢看,反复品味学习,直播内容不容错过,老师会现场答疑解惑,体验很好。

学社的社区是另一个吸引我的地方,这里充满活力,有不少同学在上面分享自己遇到的问题解决方法、面试经验等等,读完都感觉有所启发。

关于找工作及面试题

这次换工作,我是在各大平台上都有投简历,但综合下来还是学社内推的岗位质量最高,最终也是去了学社推的公司。

下面是我面试时遇到的一些问题类型:

接口自动化框架->UI 自动化框架->测试用例设计思维->Linux->SQL->Python->常用算法和数据结构->Shell 脚本->jmeter->Docker->Jenkins

重点还是 UI、接口自动化等方面的技能,最好是有过落地实践的项目或者自己写的 demo,这样才能在面试的时候有干货可以说。

接口自动化框架

掌握 requests 库的使用,测试数据的生成,可以使用数据库或者 faker 之类的库,断言判断接口的返回状态码和数据体等内容。同时为了提高框架的可维护性和稳定性,可以使用正交实验法来生成接口用例,用 JSONschema 来进行对比。还可以使用一些设计模式来提高框架的可用性,比如单例模式,工厂模式等。

UI 自动化框架

UI 自动化方面除了常问的元素定位方式、PO 模式外,还需要准备更多,比如框架的分层设计、日志如何存储,报告如何管理,测试数据怎么构造,失败重试机制,driver 统一调度等等问题,这些需要在实际的设计过程中逐一其思考解决。

测试用例设计

面试时可能会问,给你个功能,如何去设计它的测试用例。

回答的思路可以分类、分设计方法来设计

如分类:功能用例、UI 用例、接口用例、性能用例、兼容性用例、安全用例等

如分设计方法:等价类、边界值、场景法、因果图、判定表、正交实验法、错误推测法等

Linux

重点掌握常用的命令即可,可以分类掌握。

  1. 文件目录操作:cd、ls、pwd、touch、mkdir、mv 、rm

  2. 搜索命令:whereis、find、which

  3. 文本操作:cat/tac、head/tail、wc、cut、sort、uniq、grep、awk、sed

  4. 系统操作:ps、top、ifconfig、ping

Sql

主要看联表查询、子查询、group by... having 、order by、distinct、常用函数(count,sum 等)、存储过程等,然后可以在力扣上练习一下就会比较熟练了。

Python

  1. Python 基本语法和数据结构:熟悉 Python 的语法规则,掌握常用的数据结构特点和区别,比如如列表、字典、元组等。

  2. 文件操作:学习如何读取和写入文件,以及处理文件路径和文件夹的操作。

  3. 异常处理:了解如何使用try-except语句来捕获和处理异常,确保程序在出现错误时能够正常执行或给出相应的提示。

  4. 模块和包的使用:掌握如何导入和使用Python的标准库和第三方库,以扩展程序的功能。

  5. 正则表达式:学习如何使用正则表达式进行字符串的匹配和替换,以及提取特定的文本信息。

  6. 面向对象编程(OOP):了解面向对象编程的基本概念和原则,学会定义类、创建对象,并使用类的属性和方法。

常用算法和数据结构

  1. 排序算法:常见的排序算法,如冒泡排序、选择排序、插入排序、快速排序、归并排序等。了解它们的原理、时间复杂度和空间复杂度,并能够实现它们的代码。

  2. 查找算法:了解常用的查找算法,如线性查找、二分查找等。

  3. 栈和队列:学习栈和队列的基本概念和特点。了解它们的应用场景,例如栈的应用可以用于括号匹配、逆波兰表达式求值等;队列的应用可以用于实现缓冲区、任务调度等。

  4. 链表:掌握链表的概念和基本操作,包括插入、删除和遍历等。了解链表与数组的区别和优劣,并能够使用链表解决相应的问题。

  5. 树和二叉树:了解树和二叉树的基本概念和性质。学习树的遍历方式,包括前序遍历、中序遍历和后序遍历。

Shell 脚本

重点掌握 Shell 的语法和一些常见处理,最好写一些脚本练习练习,面试的时候可以拿出来当例子,比如自动化测试用例执行脚本、代码行数统计之类的:

  1. 变量和参数处理:定义和使用变量,包括局部变量和环境变量。了解如何处理命令行参数,使用特殊变量如$0、$1等获取参数值。

  2. 分支和循环结构:掌握if-else语句进行条件判断,根据条件执行不同的代码块。了解for循环、while循环等进行迭代操作。

  3. 文件和目录操作:学习检查文件或目录是否存在,创建和删除文件或目录,以及进行文件读取和写入操作。

  4. 字符串处理:掌握字符串的拼接、截取和替换操作。

  5. 错误处理和日志记录:学习捕获和处理脚本中的错误,将脚本的执行结果输出到日志文件中。

  6. 常用命令的组合和管道操作:熟悉常用的Shell命令,如grep、sed、awk等,学会结合它们使用,通过管道操作实现更复杂的功能。

Jmeter

主要掌握如何用 jmeter 来做性能测试,包括性能脚本编写操作、性能脚本运行结果分析。同时,对 JMeter 的高级特性有深入的了解,比如创建和使用自定义函数和变量,利用 BeanShell 编写高级脚本,以及执行分布式测试来模拟大规模的用户负载。最后,对性能测试的基本原则和方法,如负载测试,压力测试,耐久性测试等有清晰的理解,并能够明确地解释这些测试的目的和预期结果。

Docker

重点看下 Dockerfile、Docker compose、Docker 文件管理等内容。

Jenkins

掌握 Jenkins 环境安装、job 配置、构建、插件安装配置等部分。

最后,再次感谢学社的各位老师的教导,也希望学社未来能越来越好,来这里学习的大家都能学有所得,早日拿到自己的 Dream offer。

标签:学习,40%,掌握,Python,学社,涨薪,用例,测试,揭秘
From: https://www.cnblogs.com/hogwarts/p/18055969

相关文章

  • 20240305-日记(补-含0303-0304)
    我今天要是再不补,我这个目标可能就戛然而止了。这三天过得就跟三明治一样,搬家-加班-搬家。虽然想象中能搬到新家,会很开心,但是怎么说呢,还是没有一种很踏实的归属感。而且有时候我说话就是很绝,断自己和他人后路的想法。这几天也不算一点时间都挤不出来,看完了《降世神通3》,《致命游......
  • CMN简述 --20240305
    以下仅是个人对CMN的浅显理解:CMN全称为coherentmeshnetwork,是一种互联技术,通过在系统中设立多个节点之间的互联来实现高性能和可靠性CMN的具体应用:应用于多核之间的cache一致性以上图为例,每个cluster均有片内cache,当CPU对DDR写一个值时,例如向ddr0x100地址写入0x1 当没有......
  • DW_apb_timers介绍 --20240305
    DW_apb_timers是新思设计的基于APB总线的一个IP DW_apb_timers框图如下:DW_apb_timers特性:1、多达8个可编程定时器;2、定时器宽度可设:8至32位;3、支持两种运行模式:freerunning和user-mode;4、支持定时器的独立计时;5、每个中断可配置极性:低电平(下降沿),高电平(上升沿);6、单个或......
  • AMBA简述 --20240305
    AMBA(AdvancedMicrocontrollerBusArchitecture)是ARM公司推出的一种开放式的总线标准,用于连接处理器、内存和外设模块,构建高性能、低功耗的嵌入式系统。AMBA包括了多个总线协议,其中包括APB(AdvancedPeripheralBus)、AHB(AdvancedHigh-performanceBus)和AXI(AdvancedeXtensibleI......
  • 内核日志系统设计 --20240305
    简单日志系统设计在高通或者MTK的源码中,以camera系统为例,多个子模块,我们可以通过向debug系统中通过打开关闭相关模块对应的bit位来开启或关闭模块日志 在内核中实现其实并不复杂,使用module_param来创建一个sys节点来进行日志控制:如下:staticintdebug=0x3;//i......
  • 404. 左叶子之和c
    /***Definitionforabinarytreenode.*structTreeNode{*intval;*structTreeNode*left;*structTreeNode*right;*};*/voidpostorder(structTreeNode*root,int*sum,inttag){if(!root)return;postorder(root->left......
  • 20240305 软件工程课打卡
    今天上了软件工程的第一节课,收获很多,老师用游泳,体育健身教练等形象的例子向我们阐述了软件工程以及大学中各种课程的学习方法。让我明白了自己动手实践的重要性。课堂练习是统计文本文件中最长的接龙单词链,我使用了Python,将其只保留英文字母删掉符号和数字,去掉重复单词作为一个集......
  • B-核心交换机-1-C-06-CSW-RGS6250-01U40
    设备编码:SHDXYQB4-108-C-06-CSW-RGS6250-M1-01U40_37带外地址:10.30.0.41hostnameSHDXYQB4-108-C-06-CSW-RGS6250-M1-01U40_37#ACLipaccess-listextended200010permitiphost10.30.0.136any15permitiphost10.30.0.137any1000denyipanyanylist-remarkFor......
  • B-万兆业务接入-C-07-ASW-RGS6250-01U40 leaf-1
    设备编码:SHDXYQB4-108-C-07_C-07-ASW-RGS6250-M1-01U40_37带外地址:10.30.0.43hostnameSHDXYQB4-108-C-07_C-07-ASW-RGS6250-M1-01U40_37novrfglobal-vrf!vrfdefinitionNET-managedescriptionFor_NetworkManagerd1:1address-familyipv4exit-address-familyad......
  • 揭秘麦肯锡的方法:产品经理解决问题指南
    您是否想知道世界上最成功的产品经理如何始终如一地提供不仅满足而且超出预期的解决方案?秘密可能就在于世界上最负盛名的咨询公司之一麦肯锡公司所磨练的方法论。本文深入探讨了麦肯锡的问题解决流程,该流程专为希望提升水平的产品经理量身定制。01.麦肯锡方法:产品管理风......