应聘软件测试岗位需要掌握的基础知识与技能(面试常考内容)_测试工程师需要哪些知识储备-程序员宅基地

技术标签: 数据库知识  技术入门与方向选择  网络知识  软件测试  测试概念与流程  Linux命令  

目录

1、前言

2、要掌握的基础知识及技能概述

3、软件测试的基本流程与基本概念

3.1、一个软件产品从无到有的完整流程

3.2、软件测试工程师的职责与工作内容

3.3、测试的分类

3.4、测试用例的编写

3.5、软件的产品形态

4、基本的网络知识和常用的网络命令

4.1、基本的网络知识

4.2、常用的网络命令

5、数据库与常用的SQL语句

6、常用的Linux命令

7、自动化测试工具的使用与自动化脚本的编写

8、做软件测试是否有前途?

9、应聘途径的选择

9.1、通过校园招聘应聘

9.2、通过招聘网站应聘

10、作为应届生,面对严峻的就业形势,该怎样应对?

11、最后


       最近和一些高校的学生朋友交流,他们打算毕业后从事软件测试的工作,他们想了解一下软件测试的一些工作内容和工作方式,想知道应聘软件测试岗位要掌握哪些知识和技能。今天我们就来讲一下在应聘软件测试岗位之前需要学习哪些内容,做好哪些方面的技能储备,给大家提供一个参考。

VC++常用功能开发汇总(专栏文章列表,欢迎订阅,持续更新...)icon-default.png?t=N7T8https://blog.csdn.net/chenlycly/article/details/124272585C++软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续更新...)icon-default.png?t=N7T8https://blog.csdn.net/chenlycly/article/details/125529931C++软件分析工具案例集锦(专栏文章,持续更新中...)icon-default.png?t=N7T8https://blog.csdn.net/chenlycly/article/details/131405795C/C++基础与进阶(专栏文章,持续更新中...)icon-default.png?t=N7T8https://blog.csdn.net/chenlycly/category_11931267.html

1、前言

2203d7e160014051b6a9b353d29b5a82.png

       IT行业主要有两大类岗位,一是研发类岗位,一个是测试类岗位。以前我经常讲,测试岗位相对研发岗位,门槛要低不少,对学历和能力的要求要低一些,很多同学都可以来应聘软件测试的工作。

       除了计算机科学与技术、软件工程等计算机类专业的同学,其他计算机相关专业的同学也可以来从事IT相关的工作,比如电子信息工程、通信工程、电气自动化、自动化等专业,甚至是数学、物理、化学等专业同学也进入了IT行业。虽然很多IT公司的招聘岗位说明中都有提到招聘计算机专业和计算机相关专业,但实际招聘时并不会有特别的限制,只要是有一定基础的理科和工科的同学,都可以来应聘。实际情况也确实是这样的,在公司我们接触到的同事,很多都是非计算机专业毕业的。

       作为从事IT行业十多年的软件开发人员,我经常和软件测试人员打交道,对软件测试行业比较了解,对招聘软件测试人员的要求也比较熟悉!我已经成功帮助一个足球队建制的朋友们跨入了软件测试行业,其中有刚毕业的应届生,也有在其他行业工作若干年中途转到IT行业的朋友,所以在这方面积累了一些技术和经验。这些朋友在应聘软件测试岗位之前,我都会给他们做一些基础知识的技术培训,包括软件测试的基本概念和基本流程、基础的网络知识、常用的数据库技能以及常用的Linux命令等。在这里我把这些培训的心得和细节内容,详细分享给大家,希望能帮到大家。

       以下内容不仅仅适用于即将毕业的同学,也适用于一些在校的学生(可以提前将相关知识储备起来),也适用于中途转行的朋友(中途转行进入软件测试行业)。

2、要掌握的基础知识及技能概述

cda48ba7e0854447bd8b61f82ad8ad62.png

       从当前IT行业对测试人员普遍要求来看,一般需要了解软件测试的基本流程与基本概念,了解测试用例的编写;要了解基本的网络知识;要了解数据库的基本概念,掌握常用的SQL语句;要熟悉常用的Linux命令等。如果会使用常用的自动化测试工具(比如按键精灵、QTP、selenium、Jmeter等),能用Java和Python脚本语言编写自动化测试和接口测试的脚本,就更好了。在各大IT公司的岗位招聘说明中,基本上都是对这些知识和技能的要求。下面我们就来详细讲述一下这些基础知识和技能,帮助大家尽快掌握,以满足大部分IT企业的要求。

        这些基础知识和技能,都是笔试或者面试常考的点,大家都要掌握。


        在这里,给大家重点推荐一下我的几个热门畅销专栏:

专栏1:(该专栏订阅量接近350个,有很强的实战参考价值,广受好评!专栏文章持续更新中,预计更新到200篇以上!)

C++软件调试与异常排查从入门到精通系列文章汇总icon-default.png?t=N7T8https://blog.csdn.net/chenlycly/article/details/125529931

本专栏根据近几年C++软件异常排查的项目实践,系统地总结了引发C++软件异常的常见原因以及排查C++软件异常的常用思路与方法,详细讲述了C++软件的调试方法与手段,以图文并茂的方式给出具体的实战问题分析实例,带领大家逐步掌握C++软件调试与异常排查的相关技术,适合基础进阶和想做技术提升的相关C++开发人员!

专栏中的文章均是通过项目实战总结出来的(通过项目实战积累了大量的异常排查素材和案例),有很强的实战参考价值!专栏文章还在持续更新中,预计文章篇数能更新到200篇以上!

专栏2: 

C/C++基础与进阶(专栏文章,持续更新中...)icon-default.png?t=N7T8https://blog.csdn.net/chenlycly/category_11931267.html

以多年的开发实战为基础,总结并讲解一些的C/C++基础与进阶内容,以图文并茂的方式对相关知识点进行详细地展开与阐述!专栏涉及了C/C++领域的多个方面的内容,同时给出C/C++及网络方面的常见笔试面试题,并详细讲述Visual Studio常用调试手段与技巧!

专栏3: 

开源组件及数据库技术icon-default.png?t=N7T8https://blog.csdn.net/chenlycly/category_12458859.html

以多年的开发实战为基础,分享一些开源组件及数据库技术! 


3、软件测试的基本流程与基本概念

       这部分内容,是一个软件测试工程师必须要了解的内容,在进入到软件测试行业之前,要对这个行业有个初步的认识和理解。

3.1、一个软件产品从无到有的完整流程

3037e9b3936e4a10a35675346ad0ef3a.png

        一个全新的软件产品从开始萌芽到最终商用,大体上会经历市场调研、技术预研、竞品分析、产品规划、产品立项、需求导入(需求人员)、需求评审、UI效果图与视觉设计(UCD美工)、编码设计(开发人员)、测试用例编写(测试人员)、测试验证、bug修改、产品bug收敛、产品发布等多个阶段。

       产品交付给客户后,因为用户机器和系统环境的不同,在用户使用的过程中会陆续报出之前未曾暴露的bug,需要研发和测试人员及时地定位、修复这些问题。客户在项目竞标等初始阶段或者在使用过程中也会提出新的需求或定制需求,产品自身也会陆续加入新的需求,产品的版本会不断的向前演进,这样就进入了产品的后期维护与需求迭代的循环往复的过程。

       面试时,面试官可能会让你简单的描述一下产品从无到有的过程,谈谈你的认识和理解。

3.2、软件测试工程师的职责与工作内容

       软件测试工程师需要根据产品的需求文档,编写测试用例,待开发人员将软件初步开发完毕后,测试人员根据之前编写的测试用例,对软件进行功能验证与测试,同时在测试过程中不断的丰富和完善测试用例。测试人员将测试过程中发现的问题,在bug记录系统中以bug单的形式反馈给开发人员。开发人员修改bug后,测试人员再对bug进行验证。软件测试人员是产品质量的把关者,是软件不断改进和优化的推动者,在软件产品研发过程中担任着很重要的角色。

3.3、测试的分类

79aee9788f784db1be4b4c66eebf388c.png

       我们需要了解一下测试的分类。测试可以分为白盒测试黑盒测试。黑盒测试是指测试人员在不了解软件内部原理和机制的情况下进行的测试,给定一个输入,看能否得到期望的输出。白盒测试是指测试人员在了解软件内部原理和流程的情况下进行的有针对性的测试。

       测试还可以分为单元测试集成测试。单元测试是以模块为单位进行的单一模块的测试。集成测试是将软件的多个模块集成在一起,进行整个系统的相关业务和流程的测试。

       测试还可以分为压力测试性能测试。压力测试是对系统进行极限压力测试,比如多客户端同时并发操作以考验服务器的性能,再比如借助自动化测试工具对客户端某个功能进行长时间的拷机测试(长时间频繁执行某一操作,比如在IM聊天框中不断地发消息)。性能测试的一个基本指标是目标软件对系统内存和CPU的占用。一个优秀的软件需要持续地对内存和CPU占用进行优化。

       在测试的过程中,还有回归测试冒烟测试的概念。回归测试是指修改代码后,重新进行测试以确认修改没有引入新的问题,并且没有影响已有功能。冒烟测试是在版本转测试之前,先选择一部分基础的测试用例进行验证,确保全流程没有严重、阻塞性的问题。

       此外,还有稳定性测试兼容性测试易用性测试等。稳定性测试主要是监测软件长时间运行是否会出现异常,比如崩溃、死锁、内存泄漏等问题。兼容性测试则是测试软件在不同环境下的兼容性,比如:

1)Web网页要在IE不同版本的浏览器(低版本IE浏览器一般不支持了)、Chrome浏览器、FireFox浏览器、360浏览器等上进行测试,看看Web页面显示是否正常。
2)客户端软件要在XP、win7、win8、win10、win11等系统上进行测试,保证在各个系统上能正常的运行。
3)视频会议软件对各个厂商的USB摄像头的兼容,保证操作不同厂商的摄像头时不会发声异常,保证能采集到清晰的图像。

易用性测试主要是检查软件中是否存在不方便用户使用的问题,主要侧重软件的用户体验。比如操作太繁琐、功能掩藏的太深、界面展现不方便用户使用等。

       面试时,面试官可能会让你列举一些常见的测试类型分类,以考察对测试相关概念的认知与理解。

3.4、测试用例的编写

f0baee19223e446586fba6936c7d9e30.png

       测试用例的编写,是根据软件需求文档中列出的功能,考虑各种可能的场景,给定一个输入,对应一个期望的输出。不仅要考虑正常的情况,也要各种异常的情况。比如以登录为例,输入正确的用户名和密码,期望结果是能正常登录到系统中,如果登录不上,就是软件功能有问题。输入正确的用户名和错误的密码,期望结果是不能登录的,如果能登录上,就是软件存在问题。

       有的公司的笔试题或面试题中出一项关于测试用例的题,让应聘者现场编写或者口述某个场景下的测试用例。回答时,既要考虑正常的场景,也要异常的场景。

3.5、软件的产品形态

af91416201af45348ad464f9e92a6e8f.png

       服务器侧的产品形态比较单一,这里主要讲的是客户端软件的产品形态,比如Windows上的PC软件,也有苹果和安卓移动端的app软件,也有苹果MAC系统中的客户端,也有硬件形态的嵌入式终端,也要有web客户端,甚至还要有支持国产化系统的客户端软件

       这里还需要了解什么是B/S架构,什么是C/S架构。所谓C/S架构就是客户端(Client)/服务器(Server)模式,比如电脑端的QQ。所谓B/S架构就是,浏览器(Browser)/服务器(Server)模式,比如使用浏览器访问的的淘宝主页。

4、基本的网络知识和常用的网络命令

e43cd87cded04debbfbf68cd2454a3e0.png

       现在基本所有的软件系统都是基于网络的,有走局域网(私网)的,有走互联网(公网)的,不可避免的会出现很多与网络相关的问题,特别是软件部署到安全级别比较高的客户环境后会出各种复杂的网络问题。所以无论是软件开发人员,还是测试人员,亦或是运维人员,还是技术支持,都需要掌握一些常用的基础网络知识,以用于日常网络问题的排查。这一块的内容,一般是面试时必问的内容。

4.1、基本的网络知识

       首先要了解OSI的7层分层TCP/IP的5层(或4层)分层,这是最基本的概念,也是笔试和面试经常问的问题。

       再就是要了解TCP建链时的三次握手的流程,即连接发起者给目标端发送一个SYN包,目标端收到这个SYN包后给发起端回一个ACK包,发起端收到这个ACK包后,再给目标端发送一个ACK包,这样就完成了3次握手建链的过程。这个过程使用WireShark抓包软件抓包看的最清楚。

       还要了解TCP的ACK确认机制丢包重传机制,比如客户端给服务器发送了一包数据,客户端会等待服务器回复的ACK确认包,如果长时间没有收到ACK包,客户端就会认为网络出问题了,会重新将之前发送的数据包重新发给服务器。正是因为这种确认机制,有效的保证了TCP的可靠性。

      要了解TCP和UDP的区别及应用场景。TCP是面向连接的,建立连接后才能进行数据的收发,是可靠的;而UDP是无连接的,无需建立连接,直接将数据丢给目标端,无法保证数据能被送到对端,所以是不可靠的。

       TCP和UDP分别用在什么场景下呢?比如在视频会议和视频监控系统中,会有大量且频繁的音视频数据的收发,这些音视频数据的收发一般要使用UDP,因为UDP可以保证很好的实时性,没有TCP那种繁杂的数据ACK机制(频繁的ACK会影响数据的收发的效率)。当然UDP是不可靠的,但这个场景中,实时性要求性比较高,最好不要有音视频的延时,即使因为UDP不可靠导致小部分数据的丢失,也是可以接收的。但一般情况下,TCP和UDP要结合在一起使用,一些关键的控制信令必须要保证传输的可靠性,所以这些控制信令的收发必须要使用TCP。

       我们还需要了解端口的概念,运行在一台电脑的众多软件,IP地址都是一样的,在建立网络连接及后续数据的收发,是如何区分的呢?其实都是通过端口号(一个介于0与65535之间的整数值)进行区分的,建立连接时需要使用到IP和端口。对于服务器而言,要接收客户端的连接请求,必须开启服务监听端口,客户端在连接时,就使用服务器的IP和监听端口与服务器建立连接。如果服务器登录不上,可以先看能否ping通服务器地址,如果能ping通,就要telnet服务器的监听端口,看服务器是否开启了监听端口。在服务器程序出现崩溃退出时,可能就没有开启监听端口了。

       此外,还要了解路由器和交换机的区别,可以自行搜索,这个地方就不再赘述了。

4.2、常用的网络命令

1)ping命令

       当软件出现网络问题时,比如登录不上,首先应该确认是否是所在电脑的网络或者远端服务器的网络出现问题了。最简单的就是ping命令,直接ping一下目标地址就好了。

105046176e3247b495c8349a977eb76f.png

如果软件系统在交互的过程中数据出现延时或抖动,可以使用ping指令,加上一个-t的参数,比如ping 172.16.72.136 -t,查看连续的ping包,看网络是否存在明显的抖动或延迟,如下:

c7a66acf94ae43ea8d4578aa59b6cb0a.png

2)ipconfig命令

        ipconfig命令主要用来查看网卡的配置信息,比如IP地址,子网掩码和默认网关等,如下所示:

7804170e0f634baf951f05480c0ce656.png

3)telnet命令

       在使用这个命令之前,需要在Windows系统中打开telnet服务,该服务在win7以上系统中默认是关闭的。打开telnet服务的入口是:控制面板-->程序与功能-->打开或关闭Windows功能:

1d4d806dd3aa429d822e20fe305120c6.png

勾选“telnet客户端”,点击确定即可。

       一般我们会使用telnet命令,查看服务器的监听端口有没有开启,比如telnet 172.16.72.136 7800,其中172.16.72.136是服务器地址,7800是服务器的监听端口。如果端口没有开启,则会显示端口打开失败,如下所示:

dd59a783e25f4425bc21152120c7db00.png

4)netstat命令

        netstat命令用来查看本机的网络连接与端口占用情况,如下:

4fa9bddb02e54a218ec2e69566608bd7.png

5)route相关命令

       route相关命令主要用来查看路由表信息,添加策略路由等。route print命令是将Windows系统中的路由表打印出来,如下图所示:

150eb68a8e4a47e1b43e3240df470453.png

        route add命令可以往路由表中添加一条路由,如下:

route add 172.16.0.0 mask 255.255.0.0  172.16.30.186(172.16.30.186为内网中的网关)

        一般在处理Windows系统中的多网卡问题时,会用到这些路由相关命令。比如系统中有两张网卡,一张是内网的网卡,一张是外网的网卡:

ab2b20c2f24c436fb5b0804e3436e48d.png

Windows系统中只能设置一个默认网关,没设置默认网关的网卡,必须通过route add命令添加策略路由来控制ip的访问走向!

6)traccert命令

       该命令可以追踪访问目标地址所经历的路径,如下所示:

1f8abe84c2044889b3f6b54d632ea445.png

通过该命令,可以看出数据包是从那个网卡发出去的(看默认网关),也可以看出从哪个运营商线路(联通线路、移动线路、电信线路)访问到目标地址的!

       之前专门写过一篇关于基础网络知识的文章,里面讲解的比较详细,可以打开看看:

详解常用的基础网络知识(面试常考内容)icon-default.png?t=N7T8https://blog.csdn.net/chenlycly/article/details/124433936

5、数据库与常用的SQL语句

ef5476a30d4d4064bd3d136e26ae1ae9.png

       数据库是用来存储软件业务中的数据,任何大型软件都需要用数据库软件来存放数据的。常用的数据库有SQL Server、Oracle、MySQL、小型数据库sqlite等。其中SQL Server是微软出品的,Oracle是美国甲骨文公司收费的商业数据库,MySQL和sqlite数据库则是免费的,大家都可以免费使用的。

       大家可以安装一下MYSQL数据库,然后使用sqlyog可视化工具查看数据库,操练操练一些常用的SQL语句。

       这部分我们需要熟悉一些常用的SQL语句。Oracle、MySQL和sqlite这些数据库的语法大体上是差不多的,只是部分细节上会有所不同,我们只需要掌握通用的SQL语句即可。比如创建数据库文件(create database)、创建数据表(create table)、修改数据表(alter)、删除数据表(drop)、向数据表中插入数据(insert into)、修改表中的数据(update)、查询表中的满足给定条件的数据(select)、删除表中的数据(delete)等。这里注意要将对表结构的操作与对表中数据的操作区分开来。具体的SQL语句,大家自行学习一下,此处就不一一展开了!

       还有就是要了解一下数据库中的索引、视图、事务处理、存储过程、触发器等概念的使用。

6、常用的Linux命令

309e40ac9b1a45b493739af908ca3f6e.png

       当前大部分IT公司的后台服务器中使用的操作系统都是Linux系统,Linux系统有多个版本,比如常用的RedHat红帽系统、Ubantu系统和CentOS等,其中CentOS是免费的,也是大多数公司所采用的Linux系统。RedHat公司已经宣布停止维护CentOS服务器操作系统,可以选择华为开源的欧拉系统阿里开源的龙蜥系统腾讯开源的TencentOS系统作为替代,这些系统也都是基于开源的Linux系统的。

       除了后台的服务器,很多嵌入式系统使用的也是Linux系统。所以Linux系统已经被IT公司广泛地采用,所以很多IT企业在招聘时都会将了解Linux及掌握Linux常用命令当成基本的要求。

       掌握常用的Linux命令,主要用于Linux系统的日常维护与软件问题的排查。下面简单的列举几个日常工作中常用的命令:(下面只列出了一小部分命令,后面会专门写一篇Linux常用命令的文章

1)vi命令

       vi命令主要用来查看和修改文件内容,执行该命令后直接进入vi的命令模式。从命令模式进入编辑模式需要按i键或者a键,使用ESC键可以从编辑模式进入命令模式,具体为:

i - 插入文本

a - 追加文本

命令模式可执行的操作:(按下shift键输入:号)

:w保存文本

:wq保存并退出

:wq!保存并强制退出

:q退出

2)ls命令和ll命令

      ll命令主要用于罗列出当前目录中所有文件和文件夹的详细信息,比如文件的修改时间、读写权限、文件大小、所属用户等信息,类似于Windows中显示的详细信息,如下:

d1c13e2adfe04e96bc2753ca8e1ac04a.png

      ls命令仅罗列出当前目录中的文件名称,没有详细信息。平时我们常用ll命令查看文件的修改时间。

3)文件和文件夹操作命令touch、mkdir、rm

       touch命令用于创建文件,mkdir用于创建文件夹,rm命令(-rf)用来删除文件或文件夹。

4)chmod命令

       用于修改文件的可读可写可执行的权限。

5)netstat命令

       netstat命令用来本机的网络连接及端口占用情况的。一般使用“netstat -anp|grep + 进程名”命令,列出进程的已建立的连接或者正在监听的端口信息。

6)ps命令

      ps命令用来查看进程的相关信息。一般使用“ps -aux|grep + 进程名”命令,列出目标进程的相关信息。如果要强制杀掉某个进程,可以使用“kill -9 + 进程id”命令,要先使用“ps -aux|grep + 进程名”命令打印出目标进程的id,然后再调用kill命令。

7)top命令

       top命令可以查看进程的CPU和内存占用情况,类似于windows下的任务管理器窗口,可以查看系统中各进程的资源占用情况,如下所示:

5d795c739f224879a45f1f37abac2e1e.png

这个命令在排查目标软件在CPU和内存占用率高的问题时比较好用。

7)tcpdump命令

        tcpdump命令主要是用来在Linux系统上抓取网卡上的网络数据包,是个很强大很实用的命令。常用的命令格式为:tcpdump -i eth0 -s 0 -w 0515.pcap,其中-i用来指定抓哪张网卡的,可以是any,表示抓所有网卡的数据包;-s用来指定抓包文件的大小,一般设置为0,即不限制抓包文件的大小;-w用来指定抓包文件的名称。

       待抓包完成后,可以将抓包文件下载到Windows系统中,使用WireShark打开抓包文件进行数据包的分析。

7、自动化测试工具的使用与自动化脚本的编写

7e9f3f9415fb400bb8659f63fb08cf8c.png

       测试岗位其实分两大类,一类是功能测试,一类是开发测试。对于功能测试,主要人工测试,属于低层次的测试岗位。对于开发测试,需要使用自动化测试工具,需要编写测试脚本或代码。 开发测试也叫自动化测试,属于软件测试的高级岗位,掌握自动化测试技能的人,在招聘市场上会比较受欢迎。大型互联网公司比如阿里、腾讯、字节跳动、美团等,因为自身产品和业务的测试需要,也比较推崇自动化测试技术,推出了大量的自动化测试岗位。

       常用的自动化测试工具有按键精灵、QTP、LoadRunner、jemeter、selenium等。除了自动化测试工具,还需要编写自动化测试脚本,最常用的脚本语言是Python。有时也需要使用Java语言编写用于自动化接口测试的脚本。目前JavaPython在大型互联网公司已经被广泛的使用。

8、做软件测试是否有前途?

       与开发岗位相比,软件测试岗位的门槛要低不少,但门槛低并不代表没有前途。刚毕业入门时的待遇可能要低一些,但随着工作年限的增长,技术和经验得到逐步的提升,个人价值也逐渐体现出来。如果技术水平能进阶到自动化测试(开发测试)的阶层,薪资待遇会得到快速的提升,月薪上几万也不再是遥不可及!互联网公司对自动化测试的需求量比较大,如果有机会能进入互联网公司,不仅能拓宽视野,个人能力也会得到很大的提升。

        另外,测试岗位也可以考虑转岗,比如可以转产品需求,也可以转系统运维。总之,软件测试岗位也有足够大的发展空间,只要你愿意努力,力求上进,总能拼出属于自己的大好未来。

9、应聘途径的选择

2a64a55ff5b14da9b04b83046ae746ab.png

       对于即将毕业的应届生,在工找工作方面都是新手,没什么经验,所以我们需要在应聘途径上给一些建议。应聘的途径主要有两个,一个是校园招聘,一个是招聘网站。

9.1、通过校园招聘应聘

       还没毕业的同学,最好通过毕业前的校园招聘会来应聘,校园招聘会一般会在毕业的前一年的国庆后进行。校园招聘应聘软件测试岗位成功的几率要大很多,一是各大IT公司在校园招聘中投入了大量的招聘名额,二是校园招聘时各大公司对应届生的要求,相对走社会招聘的渠道,要低不少。

9.2、通过招聘网站应聘

       地域比较热的或者学校比较好的,校园招聘会上来的公司比较多,提供的岗位也比较多,应聘上的几率比较大。但学校地域较偏或者登记差一点的学校,去招聘的公司比较少,岗位也就比较少。这些学校的学生一般会有两种选择,一种是拿着简历到好点的学校或者去外地比较热门的城市去参加其他学校的招聘会,但这种情况下竞争压力也比较大。很多同学则选择另一种方式,拿到毕业证后(毕业后),再到北上广深等大城市来找IT相关的工作,大城市IT公司比较多,机会也比较多。

       这个时候基本是通过51job、智联招聘和BOSS直聘这些招聘网站来投递简历。其实此时应届生的机会要少很多,因为稍微好点的公司基本上在年前的招聘会上就将应届生的名额招满了,已经基本没有应届生的招聘需求了。这些招聘网站上的职位大多数都是社会招聘的职位,对工作经验有一定的要求,不过部分岗位也考虑应届生,对应届生的要求会低一些。

10、作为应届生,面对严峻的就业形势,该怎样应对?

       首先我们要事先有准备的学习并掌握上述基本知识与技能,以保证能相对顺利地通过IT公司的笔试和面试。其次就是要降低要求,降低对公司和薪资的要求,应该把能在IT行业立足放在首位。工资不是最重要的,应该把学习和增长经验放在首位。有了技术和经验之后,工资肯定会一步步涨上去的。

       再就是,以往我们不太建议刚毕业的应届生去外包公司,一是外包公司不太稳定,二是外包公司没有归属感。但在机会不多的情况下,外包公司是可以考虑的。特别是一些大型的外包公司,他们有着大量的合作资源,提供了大量的就业岗位,并且他们相对要正规一些,公司的业务也要稳定一些。

11、最后

        以上就是我多年来的心得与经验的分享,希望能帮到打算进入IT软件测试行业的朋友们!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/chenlycly/article/details/124557409

智能推荐

平方根升余弦滤波器 matlab,平方根升余弦滤波器的设计.pdf-程序员宅基地

文章浏览阅读1.2k次。平方根升余弦滤波器的设计2005年第9期中图分类号:TNTI3 文献标识码:A 文章编号:1009—255212oo5)o9—0058—03平方根升余弦滚 降数字滤波器 的设计与实现文安平(武汉科技大学信息科学与工程学院,武汉 430081)摘 要:现代数字通信中广泛采用平方根升余弦滚降数字滤波器作为基带成形滤波器和 匹配滤波器。介绍 了平方根升余弦滚降数字滤波器的设计和优化方法,并提 出了用..._平方根升余弦滤波器

Qt 按钮如何实现背景图片的加载_qt 加载图片layout-程序员宅基地

文章浏览阅读754次。一个简单的按钮图片加载代码,一般人出现的问题都是加载的图片可能会很小,怎么解决这个问题呢?来看看下面的代码吧,对于相关的迷惑点我会给出讲解,同时在学习这个代码的过程中我们也学学其他的一些功能实现。如何显示中文、如何设置字体以及颜色等。  #include   #include   #include   #include   #include   in_qt 加载图片layout

迪文屏 DGUS采坑手册_迪文屏分辨率低-程序员宅基地

文章浏览阅读1.4k次。迪文屏幕开发——采坑指南分辨率!地址通信下载上电分辨率!硬件本身的分辨率自己制作的背景图片的分辨率新建工程的分辨率这三个分辨率必须要保持一致!否则会出现显示混乱的状况。地址这里的地址就是屏幕内部的储存地址,我们在自己选择地址储存信息的时候,可以使用的地址是0x1000~0xFFFF.通信迪文屏在进行通信的时候,需要注意三点:1、确认自己编辑的控件勾选了数据上传2、调整屏幕硬件配置,打开数据上传功能3、迪文屏所有的发送和接收的数据,都是十六进制下载上电不同尺寸的屏幕需要的电压是_迪文屏分辨率低

UOJ #11. 【UTR #1】ydc的大树-程序员宅基地

文章浏览阅读92次。题目描述:ydc有一棵n个结点的黑白相间的大树,从1到n编号。这棵黑白树中有m个黑点,其它都是白点。对于一个黑点我们定义他的好朋友为离他最远的黑点。如果有多个黑点离它最远那么都是它的好朋友。两点间的距离定义为两点之间的最短路的长度。现在你要摧毁一个白点。摧毁后有一些黑点会不高兴。一个黑点不高兴当且仅当他不能到达任何一个在摧毁那个白点前的好朋友。请你最大化不高兴的黑点数。解题..._ydc的大树

阿里程序员常用的 15 款开发者工具~-程序员宅基地

文章浏览阅读88次。从人工到自动化,从重复到创新,技术演进的历程中,伴随着开发者工具类产品的发展。阿里巴巴将自身在各类业务场景下的技术积淀,通过开源、云上实现或工具等形式对外开放,本文将精选了一些阿里巴巴的开发者工具,希望能帮助开发者们提高开发效率、更优雅的写代码。由于开发者涉及的技术领域众多,笔者仅从自己熟悉的领域,以后端开发者的视角盘点平时可能用得到的工具。每个工具按照以下几点进行介绍:工具名称和简介使用场景使用教程获取方式一、Java 线上诊断工具 ArthasArthas是阿里巴巴 2018 年 9 月开

java实体类及类属性判空_判断实体类是否为空-程序员宅基地

文章浏览阅读1.1w次。敲代码时判空是必须的,这里分享一下java实体类及类属性判空体会。一、实体类判空:1.1实体类判空如果是读库返回实体类,我们直接判空即可,如下图1.2如果是先定义了类就不能这样判空了,因为new 对象时已经分配了资源,代码不执行if而是执行else,如下图二、类属性判空如果遇到上述1.2情况时,属性判空就比较麻烦了,特别是类属性是基本类型时,比如类的id属性是long类型时,这时可以用下面的代码(下面的代码是看网上提供的判断类是否都为null的判断方法)修改上述代码为下图,就可以根据实际需求_判断实体类是否为空

随便推点

c语言随机数的生成_c语言生成随机-程序员宅基地

文章浏览阅读2.8w次,点赞68次,收藏167次。在正文开始之前,我们需要说明一件事情,在我们使用函数生成的随机数都不是真正的随机数,准确的叫法应该是伪随机数。在 C 语言当中使用随机数要用到 rand 函数和 srand 函数。int rand():返回值为随机值,参数为空,通过 rand 函数就会产生一个随机数。void srand(unsigned int seed):返回值为空, 就是设置随机种子的,当我们不设置随机种子的时候,默认设置的..._c语言生成随机

[TM4C123单片机实战] 两路ADC检测,短路报警_adc检测 短路保护-程序员宅基地

文章浏览阅读4.2k次,点赞2次,收藏8次。如果最终得到的数据是两路数据的差值, 我们可以采用ADC的 Difference 工作模式#include #include #include "inc/hw_memmap.h"#include "driverlib/adc.h"#include "driverlib/gpio.h"#include "driverlib/pin_map.h"#include "driver_adc检测 短路保护

Xcode控制台调试常用命令_xcode po命令-程序员宅基地

文章浏览阅读1.7k次。当遇到crash时,查看线程栈,只能看到栈帧的地址,使用imagelookup–address地址可以方便的定位到这个地址对应的代码行。命令可以打印出线程的堆栈信息,该信息比左侧的DebugNavigator看到的还要详细一些。在调试时,动态的修改变量的值,这在调试想要让应用执行异常路径(如执行某个else情况)很有用。命令类似,所以也是可以打印常量、变量,打印表达式返回的对象等。在控制台执行该命令,可以在不修改代码,不重新编译的情况下,修改界面上的视图。命令是打印所有线程的堆栈信息。......_xcode po命令

PPT的配色方法(师从于珞珈老师)_ppt配色教程-程序员宅基地

文章浏览阅读969次。PPT的配色方法PPT中色彩的用处层次更加的清晰,ppt中有小标题 大标题 正文等不同的部分,每一个部分的重点和级别程度也不一样,可以使用不同的颜色来对重点和非重点进行区分分割内容区域,通常一个PPT具有很多个部分,每个部分表达的内容可能不一样,比如开题PPT,就包括了研究背景和意义、研究现状、研究内容、工作进度安排和参考文献五个部分。分别对每个部分用不同颜色加以区分(这里求同存异,我个人是不太赞成老师这一观点的,因为我一直觉得一套PPT必须有一套的完整风格)强化主题联系,在专业的场合,_ppt配色教程

ajax 注册异步查询,Ajax异步查询用户是否存在-程序员宅基地

文章浏览阅读142次。码农公社 210.net.cn210是何含义?10月24日是程序员节,1024 =210、210既210之意。Ajax就将信息发到了服务器去检查该用户名是否已经被注册了,这样如果用户名已经存在,不用等用户将所有数据都提交就可以给出提示。采用这种方式大大改善了用户体验。下面是用JS获取用户Id然后将其发送给UserValidate.jsp页面,然后通过callback方法接收页面返回的消息并通..._.net查询用户信息ajax

catkin_make 与cmake-程序员宅基地

文章浏览阅读990次。http://blog.csdn.net/zyh821351004/article/details/503884291. catkin_make 与cmake的关系 程序在cmake编译的流程: cmake指令依据你的CMakeLists.txt 文件,生成makefiles文件,make再依据此makefiles文件编译链接生成可执行文件.catkin_make是将..._catkin_make -dcmake_build_type=

推荐文章

热门文章

相关标签