外包干了两年,收获真不少...

有一种打工人的羡慕,叫做“大厂”。

真是年少不知大厂香,错把青春插稻秧

但是,在深圳有一群比大厂员工更庞大的群体,他们顶着大厂的“名”,做着大厂的工作,还可以享受大厂的伙食,却没有大厂的“命”。他们就是大厂的“外包员工”。

什么都做了,和什么都没做其实是一样的,走出“瞎忙活”的安乐窝,才是避开弯路的最佳路径。希望我的经历能帮助到有需要的朋友,同时也给各位准备了一份资源,盘里头是一整套软件测试必备资料。

内容涵盖:包括测试理论、Linux基础、MySQL基础、Web测试、接口测试、App测试、管理工具、Python基础、Selenium相关、性能测试、LordRunner相关等… 质量非常高,需要的可文末自行领取(免费)!!

外包公司的特点有哪些?

首先,特点就是人员流动性特别大,接着上面例子,因为可能干了三四个月,该项目做完了,这10个人估计都得走,然后这10个人又会被外包公司派去其他的甲方公司面试,面试成功才有工资拿,没面试成功只有底薪2200。

如果一个外包人员面试甲方公司,一直都没有面试通过,那他就是只能一直拿底薪,大约每天70块钱的收入,所以,有些就觉得没劲,干脆辞职。

还有一个就是:你如果要入职外包公司的话,一般要经过两面,一面外包,过了外包的面试,才有第二轮甲方公司的面试,这些外包的人事都会提前通知你,去哪个甲方公司面试,然后第二面你又要去甲方面试,如果这个甲方公司面试通过了,就会给你发offer,让你入职签合同,如果第一个甲方公司面试没通过,那就去第二个甲方公司,依次类推,直到你面试的甲方公司通过才可以入职签合同。

关于签合同和福利待遇

  • 薪酬福利

一般而言外包员工的薪酬福利是远低于正式员工的

正式员工:薪资之外还有五险一金和公司福利等;而外包的价格顶多是岗位的正常薪资。

  • 职业发展

外包员工很快会遇到瓶颈,因为只有非核心岗位会外包,这类岗位缺乏长期发展的空间。

正式员工,有成绩或者呆的年限够长都回有相应的回报。

  • 工作稳定性

外包是灵活用工的一种,意味着公司一旦需要裁员,首先考虑的是外包员工。

正式员工,会相对稳定,裁员,会获得法律的相应补偿。

  • 合同签订

外包员工的合同,是和第三方外包公司签订。

正式员工的合同,是直接和公司签订。

  • 工作范围

外包公司,一般是一对多,同时服务多家企业。

正式员工,一般是一对一,只服务于所在公司。

  • 外包公司可不可以进呢?

一般情况下,我不建议大家选择去外包公司,因为从各个方面综合比较,外包公司都是不利于我们发展的。但是外包公司的存在又是大多数,我们应该怎么办呢?我的建议是,根据自身情况做“符合事实的选择”,如果我们找了很久的工作都没有拿到一份满意的offer,无论是心理还是身体上都承受不住这种煎熬,那么我们可以暂且先在外包公司进行工作,从而积累工作经验,等到时机继续寻找符合自己的满意公司。

但是在外包公司工作一定不要超过两年,要提前去策划自己如何跳出这个环境,从而找到更加有发展潜力的平台进行学习和发展。这些都是需要自己去运营的。在整个过程中,“学习”是主要改变的方式,通过巩固和学习技术与知识,我们可以增加自身的竞争力,毕竟我们还是做的技术行业,还是要用自身的技术能力来说话。

我的外包测试收获

在外包公司也不一定全无收获,我在外包公司这几年也收获不少,感慨良多!

技术方面

  • 熟悉了大厂的流程,掌握各种工具
  • 掌握了新的技术栈,如mysql都是在外包的这两年学习的
  • 代码习惯更好了,
  • 编程思想上的提升
  • 问题定位速度的提升。
  • 工作能力方面
  • 更有耐心了,同事之间的交流也是很有礼貌
  • 更能抗压了,有时候测试压力挺大的,只能多加班,有时候一个月工作日都在加班,最少每个月有15天的加班
  • 更有效率了,简单的东西有时候很快就可以完成

生活方面

体重增加,因为伙食好了,现在早晚餐都包了,另外运动少了,基本没什么运动。

下一份工作不想做外包了

我之所以做了外包,是因为那时候刚来深圳,又没有找到合适的工作,就想先做一年看看,没想到这一做就是两年多,时间真的过的很快,不管是有意义的过还是颓废的过,都一样的快。

自动化测试学习建议

1、多样化练习

完全按照视频里的操作方法,用视频里的网站,按部就班的写代码,效果不大,并不是说没有必要。因为课程里所使用的网站都是老师“精心挑选”的,主要针对某个模块某个知识点而来的,用来做例子的功能也是最简单,主要目的是让学员明白当前所讲的知识点。

但是在实际应用的过程中肯定会比这复杂。所以建议在按照视频里的例子练习完成后,多拿一些常用的网站或者工作中正在使用的网站多做练习,这样我们往往会获取到一些课程里没有的知识。

一开始不会没关系,就是照着现有脚本抄也要练习,因为只有练习才能熟能生巧。

2、虚心学习不自以为是

因为我之前是有代码基础的,所以在第一次学习的过程中将所有代码相关的课程都跳过了,所以导致了知识的断层。第二次学习的过程中,是将课程从头到尾的完整的看了一遍并进行了实际操作,才发现,之前被我跳过的内容隐藏了一些我从前并不知道的知识点。

3、有始有终

第一次学习时,学习完脚本录制之后,就停止学习了,并没有继续学习后续的内容。

第二次学习后发现,用录制的方式写脚本是很low的,很有局限性,并不能满足所有的需求,后来用WebDriver和UnitTest才是真正的高级,解决脚本录制不能解决的问题。

4、应用到日常的工作中

我们学习完自动化之后,不要学习完就行了,而要积极的将其应用到我们日常的工作中,如果放着不用,一段时间之后我们学习到的知识都会慢慢遗忘。将其应用到工作中后,不仅能对技术进行不断练习、优化、升级,还能提高工作效率,何乐而不为呢?

这是我自学自动化的历程,走了不少弯路,也没有专人的指导,只能靠自己去摸索,希望我自己犯的错误能让大家引以为戒。

5、全面了解,选好切入点

目前自动化测试方向大概有以下几个:

  • 辅助测试脚本方向:以Shell,Python为主来简化重复的工作,过滤日志等;
  • 接口自动化测试方向:Python+Unittest+HtmlTestRuner+Jenkins和Java+Httpclient+TestNG+Jenkins,当然还有很多其他二次开发的框架或工具,不过核心是一样的;
  • 页面自动化方向,主要有Python+Webdrver+HtmlTestRunner+Jenkins,Java+Webdriver+TestNG+Jenkins,以及其他的框架和工具;
  • App自动化测试方向:以Robotium+Java+TestNG+Jenkins,  
  • Appium+Java+TestNG+Jenkins,Appium+Python+HtmlTestRunner为主。

当然这里介绍的都是简单的,最基本的实现方案,作为入门学习比较合适。其他五花八门的二次开发的框架,包含众多功能的方案留待你以后提升。先从这几方面了解入手,选择一个语言体系,建议从接口自动化入后,然后再去学习页面和app。

全网首发-涵盖16个技术栈

  • 第一部分,测试理论(测试基础+需求分析+测试模型+测试计划+测试策略+测试案例等等)
  • 第二部分,Linux( Linux基础+Linux练习题)
  • 第三部分,MySQL(基础知识+查询练习+万年学生表经典面试题汇总+数据库企业真题)
  • 第四部分,Web测试
  • 第五部分,API测试
  • 第六部分,App测试
  • 第七部分,管理工具
  • 第八部分,Python基础(Python基础+编程题+集合+函数+Python特性等等)
  • 第九部分,Selenium相关
  • 第十部分,性能测试
  • 第十一部分,LordRunner相关
  • 第十二部分,计算机网络
  • 第十三部分,组成原理
  • 第十四部分,数据结构与算法
  • 第十五部分,逻辑题
  • 第十六部分,人力资源

软件测试基础

  • 软件测试的步骤是什么?
  • 如何录制测试脚本?
  • 应该考虑进行如何测试的测试方法
  • 怎样估计测试工作量?
  • 测试设计的问题
  • 当测试过程发生错误时,有哪几种解决办法?
  • 测试执行的问题
  • 测试评估的目标
  • 如何提高测试?
  • C/S模式的优点和缺点
  • B/S模式的优点和缺点

Linux

  • grep和find的区别? grep 都有哪些用法?
  • 查看IP地址?
  • 创建和删除一个多级目录?
  • 在当前用户家目录中查找haha.txt文件?
  • 如何查询出tomcat的进程并杀掉这个进程,写出linux命令?
  • 动态查看日志文件?
  • 查看系統硬盘空间的命令?
  • 查看当前机器listen 的所有端口?

Python编程

  • 统计python源代码文件中代码行数,去除注释,空行,进行输出?
  • python调用cmd并返回结果?
  • 冒泡排序
  • 1,2,3,4 这4个数字,能组成多少个互不相同的且无重复的三位数,都是多少?
  • 请用 python 打印出 10000 以内的对称数(对称数特点:数字左右对称,如:1,2,11,121,1221 等)
  • 给定一个整数 N,和一个 0-9 的数 K,要求返回 0-N 中数字 K 出现的次数
  • 判断 101-200 之间有多少个素数,并输出所有的素数
  • 一个输入三角形的函数,输入后输出是否能组成三角形,三角形类型,请用等价类- 划分法设计测试用例

MySQL数据库

  • 你用的Mysql是哪个引擎,各引擎之间有什么区别?
  • 如何对查询命令进行优化?
  • 数据库的优化?
  • Sql注入是如何产“生的,如何防止?
  • NoSQL和关系数据库的区别?
  • MySQL与MongoDB本质之间最基本的差别是什么
  • Mysql数据库中怎么实现分页?
  • Mysql数据库的操作?
  • 优化数据库?提高数据库的性能?
  • 什么是数据的完整性?

Web测试

  • Web测试和app测试区别?
  • WEB测试环境搭建和测试方法
  • WEB测试教程
  • WEB测试要点及基本方法
  • Web测试页面总结

接口测试

  • 什么是接口
  • 如果模块请求http改为了https,测试方案应该如何制定,修改?
  • 常用HTTP 协议调试代理I具有什么?详细说明抓取HTTPS协议的设置过程?
  • 描述TCP/IP协议的层次结构,以及每一-层中重要协议
  • jmeter,一个接口的响应结果如下:
  • 接口产生的垃圾数据如何清理
  • 依赖第三方的接口如何处理
  • 测试的数据你放在哪?
  • 什么是数据驱动,如何参数化?

性能测试

  • 你认为性能测试的目的是什么?做好性能测试的工作的关键是什么?
  • 服务端性能分析都从哪些角度来进行?
  • 如何理解压力测试,负裁测试以及性能测试?
  • 如何判断是否有内存泄漏及关注的指标?
  • 描述软件产“生内存泄露的原因以及检查方式。(可以结合- 种开发语言进行描述)
  • 简述什么是值传递,什么是地址传递,两者区别是什么?
  • 什么是系统瓶颈?

selenium自动化

  • 如何开展自动化测试框架的构建?
  • 如何设计自动化测试用例:
  • webdriver如何开启和退出一个浏览器?
  • 什么是自动化测试框架?
  • Selenium是什么,流行的版本有哪些?
  • 你如何从命令行启动Selenium RC?
  • 在我的机器端口4444不是免费的。我怎样才能使用另一个端口?
  • 什么是Selenium Server,它与Selenium Hub有什么不同?
  • 你如何从Selenium连接到数据库?
  • 你如何验证多个页面上存在的一个对象?
  • XPath中使用单斜杠和双斜杠有什么区别?
  • 如何编写SeleniumIDE/ RC的用户扩展?
  • 如何在页面加载成功后验证元素的存在?
  • 你对Selenium Grid有什么了解?它提供了什么功能?
  • 如何从你的Java Class启动Selenium服务器?
  • Selenium中有哪些验证点?
  • 什么是XPath?什么时候应该在Selenium中使用XPath?

计算机与网络

  • 一台计算机的IP是192.168.10.71子网掩码255.255.255.64与192.168.10.201 …
  • 请简述DNS、活动目录、域的概念。
  • 10M兆宽带是什么意思?理论下载速度是多少?
  • 什么是IP地址?
  • OSI七层网络模型的划分?
  • TCP和UDP有什么不同?
  • HTTP属于哪一层的协议?
  • HTTP和HTTPS的区别?
  • cookies和session的区别?
  • HTTP的get请求和post请求的区别?
  • HTTP1.0和HTTP1.1有什么区别
  • TCP的连接建立过程,以及断开过程?
  • 客户端使用DHCP获取IP的过程?
  • 写出某个网段的网络地址和广播地址?

人力资源

  • 你的测试职业发展是什么?你自认为做测试的优势在哪里?
  • 你找工作时,最重要的考虑因素为何?
  • 为什么我们应该录取你?
  • 请谈谈你个人的最大特色。
  • 一个测试工程师应具备那些素质和技能?
  • 还有问一下你是怎样保证软件质量的,也就是说你觉得怎样才能最大限度地保证软件质量?
  • 为什么选择测试这行?
  • 如果我雇用你,你能给部门带来什么贡献?

这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

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

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

相关文章

深度伪造语音检测(Deepfake Speech Detection, DSD)全面概述

近期,深度学习技术和神经网络在生成型人工智能领域已取得重大突破。如今,关键的通信媒介,如音频、图像、视频和文本,均能实现自动生成,并广泛应用于诸多领域,包括聊天机器人系统(如ChatGPT&…

Kettle9连接mysql8.0.36失败处理

一、问题描述 kettle作为数据转换同步的工具,使用java开发,连接数据库使用jar的驱动包,比如oracle连接使用ojdbc8.jar,mysql连接使用mysql-connect-java-8.0.*,但是截止目前mysql8.0.33到8.0.36在官网是没有mysql驱动包的&#x…

IPD如何解决产品开发的典型问题

IPD(Integrated Product Development,集成产品开发)是一种领先的、成熟的产品开发的管理思想和管理模式。它是根据大量成功的产品开发管理实践总结出来的,并被大量实践证明的高效的产品开发模式。从汉捷咨询二十多年来为五百多家企…

18724 二叉树的遍历运算

### 思路 1. **递归构建树**: - 先序遍历的第一个节点是根节点。 - 在中序遍历中找到根节点的位置,左边部分是左子树,右边部分是右子树。 - 递归构建左子树和右子树。 2. **递归生成后序遍历**: - 递归生成左子树的…

飞睿智能实时雷达活体探测传感器模块,智能家居静止检测实时感知人员有无

随着科技的飞速发展,我们的生活正在经历着未有的创新。在这个创新的浪潮中,实时雷达活体探测传感器模块的技术正逐渐崭露头角,以其独特的优势为我们的生活带来安全与便捷。今天,我们就来详细探讨一下这项技术,看看它是…

【DP解密多重背包问题】:优化策略与实现

文章目录 什么是多重背包问题?多重背包问题的数学模型 例题多重背包问题Ⅰ多重背包问题Ⅱ 总结 什么是多重背包问题? 多重背包问题是一个经典的组合优化问题。与标准背包问题不同,在多重背包问题中,每种物品可以选择多个&#xf…

蓝桥杯15届C/C++B组省赛题目

问题描述 小蓝组织了一场算法交流会议,总共有 5050 人参加了本次会议。在会议上,大家进行了握手交流。按照惯例他们每个人都要与除自己以外的其他所有人进行一次握手 (且仅有一次)。但有 77 个人,这 77 人彼此之间没有进行握手 (但这 77 人与…

langchain v0.3更新了什么?

版本改动 这是具体改动的链接 官方blog首先说明了: 所有软件包已在内部从 Pydantic 1 升级到 Pydantic 2。 所有软件包都完全支持在用户代码中使用 Pydantic 2,而无需使用 langchain_core.pydantic_v1 或 pydantic.v1 等桥接程序。 由于 Pydantic 1 已…

【HTTP】请求“报头”(Host、Content-Length/Content-Type、User-Agent(简称 UA))

Host 表示服务器主机的地址和端口号 URL 里面不是已经有 Host 了吗,为什么还要写一次? 这里的 Host 和 URL 中的 IP 地址、端口什么的,绝大部分情况下是一样的,少数情况下可能不同当前我们经过某个代理进行转发。过程中&#xf…

2024年项目经理不能错过的开源项目管理系统大盘点:全面指南

在2024年,随着项目管理领域的不断发展,开源项目管理系统成为了项目经理们提升工作效率的利器。本文将全面盘点几款备受推荐的开源项目管理系统,帮助项目经理们找到最佳选择,不容错过。 在项目管理日益复杂的今天,开源项…

腾讯云点播及声音上传

文章目录 1、开通腾讯云点播2、获取腾讯云API密钥3、完成声音上传3.1、引入依赖3.2、参考:接入点地域3.3、参考:任务流设置3.4、首先修改配置:3.4.1、 3.5、TrackInfoApiController --》 uploadTrack()3.6、VodServiceImpl --》 uploadTrack(…

SOLIDWORKS Flow Simulation对几何模型都有哪些要求?

SOLIDWORKS Flow Simulation 是一款集设计与仿真于一体的流体仿真软件(EFD,CFD),以其操作简便、建模快捷和快速收敛等优点,深受广大初学者的喜爱。 在模型建立方面,Flow Simulation 能够直接利用 SOLIDWOR…

项目实战:Qt+OSG爆破动力学仿真三维引擎测试工具v1.1.0(加载.K模型,子弹轨迹模拟动画,支持windows、linux、国产麒麟系统)

若该文为原创文章,转载请注明出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/142454993 长沙红胖子Qt(长沙创微智科)博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、Op…

数据科学 - 字符文本处理

1. 字符串的基本操作 1.1 结构操作 1.1.1 拼接 • 字符串之间拼接 字符串之间的拼接使用进行字符串的拼接 a World b Hello print(b a) • 列表中的字符串拼接 将以分隔符‘,’为例子 str [apple,banana] print(,.join(str)); • 字符串中选择 通过索引进行切片操…

【网络安全】-访问控制-burp(1~6)

文章目录 前言   1.Lab: Unprotected admin functionality  2.Lab: Unprotected admin functionality with unpredictable URL   3.Lab: User role controlled by request parameter   4.Lab:User role can be modified in user profile  5.Lab: User ID controlled by…

Windows 10 系统安装 FFmpeg 查看、转换、编辑音频文件

1、FFmpeg官网:FFmpeg 点击下载 可以选择下载full版本 下载之后解压到指定目录,在系统环境变量 Path 里面新增环境变量 打开CMD终端运行 ffmpeg -version 查看是否安装成功。 2、基本命令 查看音频基本信息 ffprobe 1.mp3 ##输出 [mp3 000002ab334405…

LLM - 使用 XTuner 指令微调 多模态大语言模型(InternVL2) 教程

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/142528967 免责声明:本文来源于个人知识与公开资料,仅用于学术交流,欢迎讨论,不支持转载。 XTuner…

Spark-RDD持久化

一、Spark的三种持久化机制 1、cache 它是persist的一种简化方式,作用是将RDD缓存到内存中,以便后续快速访问,提高计算效率。cache操作是懒执行的,即执行action算子时才会触发。 2、persist 它提供了不同的存储级别&#xff0…

关于神经网络的一个介绍

这篇文章中,我将简单介绍下与神经网络有关的东西,包括它的基本模型,典型的算法以及与深度学习的联系等内容。 一、神经元 神经网络是由许多个神经元组成的,在生物的神经网络中,就是神经元间相互连接,传递…

高校竞赛管理系统的设计与实现

摘 要 如今社会上各行各业,都喜欢用自己行业的专属软件工作,互联网发展到这个时候,人们已经发现离不开了互联网。新技术的产生,往往能解决一些老技术的弊端问题。因为传统高校竞赛管理系统信息管理难度大,容错率低&am…