03.04 软件测试怎么入门?

Sign6516


可以自己先看看视频什么的,看看能不能接受这个难度。如果自己看视频什么的都有难度的话不建议自学,可以选择报班学习,毕竟会系统一些。如果身边有做这一行的朋友,可以问问他们的意见呢。


Deliannn


大哥大姐们啊,初期的软件测试根本就没有什么难度好不好, 压根儿就是完全可以从零开始操作的!


因为我们正常的使用一款软件,实际上也是在测试软件,那么所有的软件测试都是从最简单的点击使用开始的,你说这有没有难度 你别告诉我 你连使用软件都学不会

 软件测试是一个入门简单、但深入难的工作。

 入门的时候只要会看懂中文、理解能力没问题就可以按照测试用例来执行用例了。

  1、开始自学的时候找一本书来入门(软件测试原版第三版很不错)-差不多要1个月左右的时间、要能看懂明白里面的知识、这个阶段主要是学习理论知识;  

 2、有基础知识之后找一个软件来自己操作、从开始写测试计划、测试用例、到自己完成测试、并输出测试报告(这个阶段必须自己操作、如果有问题可以去软件测试类论坛提问)这里如果产品小的话1个月左右、软件功能多的话2个月多都有可能、建议从功能少的软件入手;  

 3、在执行第二个步骤的时候经常多去软件测试类论坛看看那些问题帖子、绝对增长你的知识量;  4、前面3个步完成之后可以开始关注招聘网站那些招聘软件测试的公司、去看看他们公司的做的什么产品、可以把他们的产品下载回来按照步骤2的方式来自己写用例执行测试、记录BUG、提交测试报告等内容(如果你去面试公司的时候拿着你的测试报告以及BUG单的话,成功率会高很多);  

 5、前面几个步骤完成之后差不多要开始找工作了、建议去看看那本《软件测工程师试面试指导》的书籍、这本书里面有很多软件测试的面试题目多看看提高知识量。

那么问题来了就是说那入门的时候要怎样去学习测试呢

首先 第一步最重要的就是你先学会使用你要测试的软件 这个是第一步

其次呢 在你掌握了软件的功能以后 把它拆分成很多的小细节 比如说 整个页面上对于功能层面 从大体上来说 就是增删改查。

其次呢 就是说 对于每一个 字段 不同的字段呢 他也是有规律的 如文本框 比如说下拉框 等等 比如说 布尔值 这些都是有规律的 我们只要是测试输入不同的内容 等待看软件能不能输出咱们去要的这个结果 就好了。

学习软件测试本身就是零难度的 你首先要克服的就是你心里的障碍 不要觉得这个事情很难 实际上是非常非常简单的东西

随着你对软件测试的深入呢 再从最开始的黑盒测试 然后过渡到白盒测试 ,所谓的黑盒测试 ,白盒测试呢 也就是说 要不要看它内部的代码结构,有的软件是需要白盒测试的 ,有的也是完全不需要的。

最后再说一下 大家觉得比较牛逼的就是自动化测试 自动化测试呢 ,在我看来也没有什么难度 你只要事先学会是大概的一个录制脚本 然后呢学会 自动化的语言 这个语言你也不需要全部学会 你只要先知道怎么去修改录制的脚本就可以了。

最重要的 我想说一下学习软件测试 就是 包括你在软件测试工作中 就是要细心 耐心 而且 能够耐得住寂寞 因为你发现你可能要长长的时间 只是 在测试一款软件 有的时候你是觉得很枯燥的

嗯 软件测试是很适合入门的一个工作 希望大家能够喜欢 嗯 也希望大家能够在留言 表达一下自己的看法


毛毛艾茉莉


软件测试是软件工程的重要过程之一,是保证软件质量的重要手段。不同的软件项目类型,软件测试占整个项目开发工作量的15%到90%不等。例如普通数据分析软件,测试投入的工作量比较小,但对于飞行控制、核电管理等软件测试所投入的精力远大于开发投入。软件测试的重要性可见一斑。

现在软件测试的书籍非常多,有介绍测试理论的、有介绍测试过程的、有介绍自动化测试的等等。软件测试想入门可以先选择2到3本好点的书,从阅读开始。

这里我们先介绍一下软件测试的基础知识。

什么是软件测试

广义的软件测试说白了就是主动地找软件的问题,包括需求问题、功能问题、可用性问题、可靠性、逻辑问题、健壮性、性能等等。

为什么进行软件测试

软件行业发展初期,软件测试的活基本是由开发工程师自己干的,测试方法及过程比较随意。但是随着软件项目规模越来越大,越来越复杂,软件故障越来越难以避免,给企业和个人带来沉痛损失的案例也屡见不鲜,下面仅举两例:

1962年美国水手1号飞船发射后262秒就不得不摧毁掉,后来分析是因为代码中漏敲了一个破折号。

2009年,丰田因雷克萨斯ES350突然刹车失灵,导致车上4名乘客全部罹难。事后丰田不得不在全球召回900万辆汽车,本次召回给丰田带来的经济损失达30亿美元。后来据查是防抱死延时软件故障所致。

因此,对软件产品主动进行认真测试,尽可能地查出可能的问题和漏洞,已经是现代软件开发必做的重要工作。通过软件测试将软件故障消灭在发布之前,这是所有软件从业人员的共同心愿。

静态测试和动态测

软件测试有动态测试和静态测试两种方法。

静态测试就是通过阅读软件的需求 、设计、编码等静态文档,通过分析静态文字或图表来发现需求、设计、编码存在的问题。

可见静态测试的主要方式就是同级评审,其好处是可以在软件需求阶段、设计阶段和编码期间就可以提前进行检查分析,及早发现存在的问题。一般而言,问题发现越早,修复成本越低。从这个角度看,静态测试比动态测试具有更高的性价比。

动态测试就是等软件开发完毕,测试工程师安装好软件,在不同的环境、不同的输入的情况下,运行并测试软件的功能、可用性、性能等。我们通常所说的软件测试就是指动态测试。

单元测试、集成测试、用户测试、阿尔法测试

软件系统根据功能和系统内部结构可以划分为一系列的软件模块(或子系统),具体开发是一个模块一个模块地实现的(当然多个模块可以并行开发)。 每实现一个模块,开发人员都要认真地对所开发的模块进行测试,这种主要由开发工程师执行的模块测试,我们称之为单元测试。

单元测试期间一般要开发专门的测试主程序(有时还要开发测试桩程序)。

整个系统开发完毕后,由测试团队对软件进行整体的测试,我们称之为集成测试。

用户拿到我们开发的软件产品或系统后,他们一般也要进行独立的测试,这种类型的测试称之为用户测试。

如果认为软件基本合格了,企业可以将软件进行小范围发布(如企业内部、免费用户群等),让大家测试用并反馈发现的问题,这个过程叫阿尔法测试。

单元测试、集成测试都需要事先进行规划,有明确的流程要求。

集成测试流程

集成测试与软件开发是软件开发过程的两条并行线程,其流程如下图所示:


如上图所示,集成测试可划分为测试分析、测试设计(包括测试准备)、测试执行三大步骤。

测试分析阶段对应系统的需求分析,它将软件系统进行功能拆分,分成不同级别的多个功能点,这些功能点是随后测试设计的基础。

测试设计在测试分析的基础上为每个功能点设计多个测试用例。有些用例重点测试基本功能,有些用例重点测试错误响应,有些用例测试边界条件,有些用例测试性能等等。测试数据的收集准备是测试设计的重要工作内容,也往往是测试过程的难点所在。

集成测试执行阶段使用测试设计生成的测试用例和测试数据,对软件逐个测试用例进行测试。发现软件故障应按公司模板或使用专门的故障跟踪工具进行规范化的故障跟踪记录。

一轮测试完毕后,开发工程师应该根据故障记录进行问题重现、分析、修复,并认真记录好修复信息。

通常软件提交给用户前需要进行三轮以上的集成测试。

实际工作中我们常常发现,按正规的集成测试流程走也有一定的问题,就是工作量大,投入时间长,测试效果往往不好。大道无形,我们不妨根据项目和企业自身人力资源特点,将集成测试和流程测试、Bug Hunting测试等多种测试方式结合起来使用,效果会更好一些,

测试工程师的职业规划

大的软件公司通常有专门的测试团队,测试团队常年累月负责软件的测试分析、测试设计、集成测试工作。

好的测试工程师需要熟悉目标软件所在行业的专业背景知识,需要对项目需求细节有深入透彻的把握,需要有对软件内在逻辑的直觉领悟,也需要足够的耐性、细心和认真负责的工作态度。加班加点是软件测试人员的家常便饭,团队冲突也是测试团队要面对的常客,当一个好的测试工程师的确不容易。

小规模软件公司,往往没有专门的测试团队,测试工作往往由开发工程师、现场工程师轮流担当。

测试工程师们在测试工作得心应手之后,结合自身特点,学习掌握一些开发技能,对自己职业发展会有帮助。


软件之道


软件测试行业入行门槛不高,0基础非计算机专业人士可以入行,但后期爬坡难度大。

建议先自学计算机基础,懂得操作系统。


下面给你一些软件测试学习方法:


1.软件测试基础理论和方法。


这块的东西内容不多,主要是在项目操作上。需要掌握的技能有:黑白盒测试、测试策略、测试方法、测试设计、测试报告等相关理论。


2.网络和数据库基础知识。


网络的部分你需要知道的:互联网发展,现代网络架构,IP分配知识,网络七层协议等。


数据库要会基本的增删改查语句操作。常见的这些数据库不仅仅是熟悉,更是要精通:mysql 、SQL Server、Oracle、Sybase、DB2


3.开发语言基础。


测试今后要发展到高级工程师,需要掌握至少一门开发语言。除了常用开发语言,最好是能掌握一门脚本语言。这是通向高级测试的必备技能。


对于软件测试来说,一些常规的开发类语言必须精通:Java、C#、JavaScript、Ruby、Python


下面的一些编程语言可做简单了解:

C、C++、Visual Basic、PHP、Perl、、Delphi、SAS、PL/SQL、D、ABAP、Lisp/Scheme、COBOL、Ada、Pascal、Visual FoxPro


如果你在学习过程中遇到问题,可以在下面给我留言,希望我的回答对你有用。


汇智动力学院


作为一名软件测试的从业人员,从我工作以来了解的周边同行及行业从业人员经历来说,入行软件测试的方式有很多,大体上有几种:

1.本身就是软件相关的专业,可谓是科班出身

这种同学本身就具有优势,学习的都是软件相关的课程,对从事软件测试行业打下了基础,本身也具备了一定的软件能力。就业的时候用人单位也容易接受,工作后也比较容易上手,有了好的基础结合工作实践也容易培养和能力提升。

2.通过参加培训入行

现在软件方面的培训比较热门,社会上有很多培训机构,他们有专门的课程针对不同学员,基本上培训几个月后,在他们的指导下拿着一份好看的简历也能找到软件测试的工作

3.通过自学入行

这种方式适合学习能力较强的人员。现在网上也可以找到很多相关的课程,从初级到高级,从理论到自动化都很多,可以找一些适合自己的课程潜心学习,根据自身的学习能力和学习强度一段时间后也可以加入测试行业中来。

4.转岗的方式入行

本来就在软件行业工作,平时接触开发、测试等人员,对软件有基本的了解,从最简单的手工功能测试开始,在实际工作中慢慢提升软件测试能力也是入行的一种途径。

我国的软件行业来说软件测试的入行门槛并不算高,不管哪种方式具备了软件测试能力基本就有机会入行


开心baby呀


邀请大牛校招中有十四年测试经验的过来人,给你以下几点建议吧:

首先确定自己是否有IT基础,如果没有,例如从销售、保险、银行等非IT行业,建议要参加一些IT类基础培训,自己再上网多看看相关的文章或者新闻。

如果有IT基础,那么可以参加一个简短的辅导班,进行一些测试相关的基础知识培训,这样可以提升你面试的成功率,毕竟对用人单位来讲,至少你对这个行业有一些了解,对基础概念有一定掌握,比培养一个小白的性价比要高吧。

接下来,就是你的心态,毕竟是转行相当于重新开始,你处于跟应届生一个起跑线,所以对薪水这块,要有个心理准备。

再然后,就是认真准备你的面试环节:自我介绍,求职意向。你肯定会被面试官问道:之前你一直从事XXX工作,为什么要转行做测试?你觉得你比应届生的优势在哪里?针对这种问题,你需要结合自身实际仔细思考,尽可能坦诚回答,博得面试官的理解。当然了,部分答案最好不要乱说,例如:开发要写代码,测试不用写代码。或者开发工作很辛苦,我想换到测试行业。这种人都会被我pass掉。

最后一点,就是你的求职公司,如果你没有很好的背景或者学历,建议从较大的外包测试公司开始,或者是小一些的公司起步,踏入这行。如果你转行就想去BAT、华为之类的公司,要做好被拒绝的心理准备。但是太小的公司,就一个测试人员,这种企业也请慎重考虑,因为你没有学习的机会,进去后公司期望你能上手干活,不要有漏测,至于研发流程类的规范化管理,那里不太可能有。

加大牛校招小助手:daniu-helper 面对面交流


大牛校招


软件测试定义是:为了发现程序中的错误而执行程序的过程它是帮助识别开发完成(中间或最终的版本)的计算机软件的正确度(correctness) 、完全度(completeness)和质量(quality)的软件过程;是SQA(software quality assurance)的重要子域。软件测试培训班学什么?

首先要多学些开发,比如:数据库(ORACLESQLSERVERMYSQL编程),VBVC,HTMLASPPHP,测试理论(软件工程测试流程黑白盒测试方法CMM),测试文档(测试计划测试用例测试报告--中英文);多学测试工具(ROBOTLRWRQTPLINUX下的一些工具),测试项目管理工具(TDVSSCVSBUGZILLAPROJECT)。

还有就是多学操作系统(WINDOWS2000SERVERLINUX--常用命令服务SHELL编程),信息安全知识等。还有就是多做项目,积累经验,有时间多跟测试圈子里的人交流。还有,软件测试主要工作内容是验证(verification)和确认(validation ),下面分别给出其概念:

验证(verification)是保证软件正确地实现了一些特定功能的一系列活动,即保证软件做了你所期望的事情。(Do the right thing)

1、确定软件生存周期中的一个给定阶段的产品是否达到前阶段确立的需求的过程;

2、程序正确性的形式证明,即采用形式理论证明程序符号设一计规约规定的过程;

3、评市、审查、测试、检查、审计等各类活动,或对某些项处理、服务或文件等是否和规定的需求相一致进行判断和提出报告。

要成功开发出高质量的软件产品,必须重视并加强软件测试工作。经过这几年的发展,同时为了在竞争中获胜,我国软件企业愈发重视软件测试的“经济价值”(软件测试能降低软件缺陷数70%以上,而投资回报率能达到350%),不少企业相继成立了软件测试部,以测试为主业的软件外包公司及第三方测试机构也纷纷出现,促使软件测试人才需求量剧增。

这个时候,如果想要入行软件测试,选择到一家比较靠谱的软件测试培训班就显得尤为重要了。不如我们看看千锋,随时欢迎你前来考察试学哟。

在这里,高薪就业并不是口号,千锋软件测试培训机构就业学员以行业高薪资稳居榜首,并不是偶然,是经过教学+教研+项目指导+高强度训练锻炼出来的。

而且名师虽贵绝不省人工,面授虽繁必不减品质。以实战项目做指导,手把手纯面授,面对面现场教学。同时论坛辅导,上课资料录制,方便软件测试学生课后复习。严格保证教学质量!


千锋教育成都


1.如果能力够强,可以进行自学,但是自学出来的一般找工作不是特别好找(除了软件测试的知识还需要恶补网络等软件行业相关知识)。2.培训,需要找一个靠谱的培训机构,带你实际的学习理论知识,学习项目经验,如果没有项目经验,没有公司会去招小白,还有你需要做好思想准备,学习过程会很艰辛,另外,软件行业,需要本科学历,如果没有,尽快参加自考。

如果你下好了不转行不能活的决心,顺利的话,认真学习两三个月,就出来了,这行本科毕业三年在成都西安这种城市,月薪都能到八千左右,但工作不会轻松,这是一个需要持续学习的行业。

祝你好运,若有关于软件测试学习的问题,可以随时问我。

菁英软件测试


你可以选择自学,也可以选择一家靠谱的培训,如果自学,就做好学一年到两年的时间准备,然后勉强找一份工作,技能涉及面窄,跳槽薪资变化不大。如果想快速提升、也能为自己以后做更好的打算,我还是建议花钱找培训机构学习,毕竟机构教的都是当下企业需要的技术,和网上免费的资料是不一样的。如果所有的自学都可以找高薪工作,那也就没有培训机构了。报个班学习,短短两个半个月的学习实践,会让自己技术、学习能力、项目经验、有大不一样的提升。


豪之诺软件测试


  软件测试作为软件上线前的必备环节,占据着十分重要的地位,也有很多IT小白想要转行做软件测试工程师,那么就要学习软件测试课程,那么零基础学软件测试难吗?新手如何入门呢?小编今天就来带大家了解一下。

  软件测试的学习门槛其实是很低的,不需要有计算机基础,也不需要你有相关的背景,只要认真学习,耐心细心,都能够学会。因为软件测试课程会从计算机基础开始讲解,再一步步深入到具体的软件测试方法和项目实战。

  软件测试是分为手工测试和自动化测试的,自动化测试可能需要编写脚本来控制测试工具进行自动化测试,但是手工测试则不需要,只用手动点击进行测试就可以了。如果你觉得自动化测试有点难度的话,只掌握手工测试也能够做软件测试工程师,找到不错的工作。当然,如果想要升职加薪的话,在后续掌握自动化测试也是很有必要的。不过那也是职业生涯后几年的事情,作为零基础的IT小白,现阶段努力学好手工测试就可以了。

  手工测试分为功能测试、接口测试、性能测试三大类,并不需要学好所有方向,只需熟练掌握其中一个方向就可以从事相应方向的测试工作了。其中功能测试相对来说比较基础,是初级软件测试工程师大多会从事的方向。接口测试和性能测试就属于进阶一些的方向了,但也不是很难,前期可以先了解一下,后期想从事相关工作的时候再掌握就可以了。


分享到:


相關文章: