霸哥来说说你这两个问题吧,第一个是想转IT,学软件测试怎么样;第二个是能不能学会的问题。
其实,在你这个年纪这个时间段,算是最好的转IT最好的时间,正当青春年少,还有很多试错的机会,如果你觉得不好,还可以退出这个圈子,如果你觉得好,那么就可以深耕下去,总之就是机会会有很多。
测试这个岗位吧,可以说算得上是现在风口很大的岗位了,企业需求量大,招的人就多,毕竟算是一个技术岗,那么相应的薪资也是比较好的。现在IT发展这么快,不管是从前景来说,还是钱景来说,都是蛮不错的。
至于说不是好学的,主要是看你学习程度的深浅了,你学的是功能测试还是自动化测试还是测试开发,岗位类型不一样,难度就是不一样的。像是功能测试,就很简单,手工点点点的技术,但如果是测试开发,难度就会比较大了,你可能需要去学编程语言,要去学测试工具,可想而知会有多难。
而学习这件事情,要看个人理解能力,对知识的接受程度是怎么样的,包括上面霸哥讲到的学习的深浅,才好说能不能学会,不过霸哥相信,只要好好学,基本上是没有问题的~
01 软件测试理论
作为一个软件测试人员,总不能不知道软件测试本身的东西吧。
你总要知道软件测试是什么?什么是测试用例?什么是缺陷?软件测试有些什么特点?这些仅仅是理论,还不关心会不会做。
再比如软件测试的定义,软件测试是测试程序?还是测试文档?还是测试软件等?
02 软件测试流程
如果要清楚软件测试流程,那就一定要知道软件工程、软件生命周期、研发模型、测试模型。
模型又有经典的瀑布模型、目前最流行的敏捷开发流程、V模型、W模型、X模型、H模型等,这些模型至少要随便知道三四种吧
除了这些,还需要知道在测试流程每个阶段都要相应地做些什么事吧。
03 测试文档
软件测试是技能型工作,不是研究型工作,了解了软件测试理论之后,你总会要做点东西吧,比如写写文档。
软件测试人员必备技能之一就是写文档,会总结。
软件测试有很多文档要写,比如测试计划、测试方案、测试用例、提交bug单、测试报告,有时每个迭代完全后,老大还会要求你输出几份经验文档出来,可见会写文档的测试人员是多么的必要。
04 计算机基础
软件测试工程师怎么说也算是IT人员,计算机基础总要会吧。
不然让你关个服务,你迷茫……
让你配置个环境变量,你再迷茫……
让你安装软件,卸载个软件,你搞半天,安装的软件全在C盘,卸载软件完全没卸干净,重装不成功,然后你再再迷茫……
让你在DOS命令窗口查个IP,然后再配个静态IP,你再再再迷茫
………………
计算机基础是软件测试人员必备的技能之一。
05 软件、工具
作为一个IT人员,你好意思说自己不会几个软件么?
那我们就一起盘点盘点,软件测试人员必须要会的软件:
office办公软件就不说了,软件测试要写这么多文档,office办公软件一定要会。
需求分析时,拆会测试点时,总要画一下思维导图,所以XMIND或其它思维导图软件总要会一个吧。
配置管理工具,不管是以前的SVN还是现在流行的git总要会一个。
远程连接工具,数据库和服务器基本都是配置机房,所以数据库和服务器的远程连接工具都要会,你总不能跑到机房去 *** 作吧,如果你跑到机房去 *** 作,那一定记得带台显示器去。
碰到不会的,总要查一下度娘和谷叔吧,你不会说这个人人都会,千万别这样!要不然怎么会有相同的问题,别人就能快速找到解决方法,而你搜索出来的网页总是找不到呢?
06 数据库
不管是MySQL,还是Oracle,还是SQLServere,还是DB2等等,数据库的特性、性能和优化可能不用知道,但是SQL语言总要会吧,谁让它们都认识SQL语言呢。
SQL语言又会为DDL、DML、DQL、DCL。
数据定义语言(DDL):
用于下定义和管理数据对象(库,表,索引,视图),包括数据库,数据表等,例如:CREATE DROP ALTER等语句。
数据 *** 作语言(DML):
用于 *** 作数据库对象中包含的数据,例如:INSERT UPDATE DELETE语句。
数据查询语言(DQL):
用于查询数据库对象中包含的数据,能够进行单表查询,连接查询,嵌套查询,以及集合查询等各种复杂不同的数据库查询,并将数据返回到客户机中显示,例如:SELECT语句。
数据控制语言(DCL):
用于管理数据库的语言,包含管理权限及数据更改,例如:GRANT、REVOKE、COMMIT、ROLLBACK等语句。
就算软件测试人员不需要关心数据库结构,可以不用DDL、DCL,但是针对数据(增、删、改、查)的DML、DQL语言一定要会吧。
就算你说INSERT、UPDATE、DELETE语句都很简单,照着格式直接使用就行,那SELECT呢。
SELECT语句不仅有简单查询,还有复杂查询。
复杂查询中包含多表查询、连接查询、子查询,以及包含各种函数进行的查询。
这些语句软件测试人员都要掌握吧。
07 LINUX
Linux做为做为服务器的 *** 作系统,软件测试人员需要经常在LINUX上进行搭建测试环境。
如果你说公司的测试环境都是开发搭的,系统和软件是运维装的,不用了解Linux系统。
那你就大错特错了。
如果测试过程中,运行报错了,总需要在后台去看看日志吧,分析下是不是BUG,如果是BUG,总还需要定位一下吧。
如果Linux系统很卡时,你总要去查下进程,查下系统资源管理,或者杀死几个进程,重启下服务什么的。
那这些命令软件测试人员总都要会吧。
如果你说这些还都可以依靠开发和运维,那你就当我没说。
08 编程语言
既然是IT人士,如果出去说自己不会一门编程语言,好像很没面子一样的。
目前世面上编程语言有C、C++、C#、世界上最好的语言(PHP)、JAVA、Perl、Python等等上百种,那你总要选一门语言学会使用。
一般情况下都是选公司系统目前所用的语言。
但如果不知道怎么选,那我建议软件测试人员可以选JAVA和Python,JAVA经久不衰定有它过人之处,Python能在这么短的时间内火起来,也一定是有原因的。
如果没有任何编程基础,建议先学Python,Python更加贴近自然语言,学起来更顺手,更快。
09 行业
软件测试有一条原则是:测试活动依赖于测试内容。
那这个测试内容就是公司业务,在成为业务之前,俗称需求。
经常在JD中看到有支付行业经验优先,有金融行业经验优先,有电信行业经验优先,有电商行业经验优化……
为什么会这样呢?
那是因为测试人员一定需要了解业务,熟悉业务。
从事电信行业的测试人员需要掌握各类协议,比如>
自动化测试的问题我们在前几期的文章中已经给大家分析过很多了,而且就不同的运行环境下的自动化测试方法也做了归类,下面IT培训就一起来了解一下,目前比较常见的几种自动化测试形式都有哪些。
物联网测试
物联网(InternetofThings,IoT)正对测试领域产生显著的影响。像Selenium这样的传统自动化方法在嵌入式环境中变得毫无用处。我们已经看到越来越多的基于Python和C/C++的测试框架执行单元测试、集成测试和系统测试。大多数测试框架都是测试由这些嵌入式库导出的API,其中相当多的框架调用嵌入式代码来执行单元测试。这需要具有重要软件开发经验的专业测试工程师,但我们看到更多的软件开发人员将被部署到自动化测试的角色。Python可能是物联网测试框架开发的选语言,因为它能够直接使用ctypes包来调用C代码。
另一个新趋势就是物联网的DevOps环境开始标准化。到目前为止,我们看到的大多是CI环境的Ad-hoc实现。我们已经预先构建了解决方案,用于构建管理、测试管理、镜像加载、物联网镜像在不同设备上的部署、不同构建物联网设备的A/B测试等。
持续测试
持续测试是从去年至今仍在继续的另一个趋势。我们在过去已经看到了DevOps和CI/CD框架的爆炸式增长,而今年这种趋势,将随着新的框架(如Nevercode和Codefresh)的出现而继续。
持续测试的另一个趋势是对每个版本进行基于人工智能的风险评估。以前,这种 *** 作是手工执行的,以确定能为应用程序部署哪些版本。我们已经实现了几个CI/CD平台,它们执行应用程序基于人工智能的自动A/B部署。
基于人工智能的测试
基于人工智能的测试方法已不仅仅是时髦语,现在已经进入了主流测试实践。人工智能和自动化是测试的两个并行方面:自动化用于功能测试,而人工智能则用于视觉测试。基于人工智能的视觉测试,包括视觉测试和感觉测试,并快速浏览每个构建版本的视觉变更,是一个非常有用的发布验证方法。我们已经在Denver的不同客户中实施了基于Applitools的视觉测试解决方案。
以上就是关于25岁了,想转行IT,学习软件测试怎么样能学会吗全部的内容,包括:25岁了,想转行IT,学习软件测试怎么样能学会吗、软件测试需要哪些技能、IT培训分享常见的几种自动化测试形式都有哪些等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)