软件测试这个工作入门难不难?

自律改变人生


初中的话,刚开始只能从事功能测试方面的工作,有时间可以提升下学历,对升职加薪都有帮助。如果想跟着老师学的话,优就业还不错,总部在北京,全国都有分校,学完可以给你推荐工作


汉武帝在武汉加油


作为一名从业多年的IT人,我来回答一下这个问题。

首先,学习软件测试是个不错的选择,总体上来说入门难度并不算高,即使计算机基础知识比较薄弱的人,通过一个系统的学习过程也能够学得会用的好。

虽然入门软件测试的难度并不算高,但是需要学习的内容却比较多,也比较杂。简单的说,就是测试什么类型的软件就需要掌握其相应的知识,像Linux操作系统,各种数据库产品以及各种服务器产品等等,所以软件测试人员需要掌握的知识面是比较广的。另外,测试人员还要掌握测试工具的使用,比如采用自动化测试时可以使用RobotFramework。

软件测试工作是围绕软件生命周期展开的,根据软件生命周期的不同阶段进行相应的功能验证(周期内要做的参考CSTQB)。通常来说,在需求设计阶段,测试人员需要理解需求和具体的业务知识;在用例设计阶段测试需要根据业务需求进行业务场景识别,进而进行用例设计、用例评审等;在测试执行阶段需要执行测试用例结合探索测试;测试总结阶段需要收集测试的相关数据并完成测试报告。另外,根据不同的测试方向,需要选择不同的测试方法。

不同团队对于测试人员的要求也不同,当前不少团队赋予了测试人员更多的工作内容,比如测试不仅仅局限于功能性验证,还需要从用户的使用体验入手进行测试。测试的内容涵盖了交互、视觉等更广泛的内容,这其实也赋予了测试人员更多的职责,从职业发展的角度来说,这就要求测试人员能够站在一个更高的角度来审视软件产品。

总之,专业测试人员是目前软件行业比较短期的人才,未来的发展前景也比较广阔。

我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。

如果有互联网方面的问题,或者考研方面的问题,都可以咨询我,谢谢!


IT人刘俊明


1、软件=程序+文档,软件测试=程序测试+文档测试。“程序”是指能够实现某种功能的指令的集合,“文档”是指软件在开发、使用和维护过程中产生的图文集合。;2、软件的分类按功能分:系统软件、应用软件按技术架构分:单机版软件、C/S结构软件(C是指客户端, S指服务器端)、B/S结构软件(B是指浏览器)按照用户划分:产品软件、项目软件按开发规模划分:小型、中型、大型3、BUG的定义:软件的BUG指的是软件中(包括程序和文档)不符合用户需求的问题。常见的软件BUG分三种类型:完全没有实现的功能;基本实现了用户需求的功能;实现了用户不需要的功能。4、测试环境=软件+网络+硬件。搭建环境:真实、干净、无毒、独立5、软件环境的分类:软件开发环境\\软件生产运行环境6、测试用例:指在测试执行之前设计的一套详细的测试方案,包括测试环境、测试步骤、测试数据和与其结果!测试用例=输入+输出+测试环境。测试用例有两个模板,word和excel,前者适合性能测试,后者适合功能测试。

软件测试分类1、黑盒测试:指的是把被测的软件看作是一个黑盒子,我们不去关心盒子里面的结构是什么样子的,只关心软件的输入数据和输出结果 白盒测试:指的是把盒子盖打开,去研究里面的源代码和程序结构。2、静态测试:是指不实际运行被测软件,而只是静态的检查程序代码、界面或文档中可能存在的错误的过程。 动态测试:是指实际运行被测程序,输入相应的测试数据,检查实际输出结果和预期结果是否相符的过程,所以我们判断一个测试属于动态测试还是静态测试,唯一的标准就是看是否运行程序。 注:同一个测试,既有可能属于黑盒测试,也有可能属于动态测试;既有可能属于静态测试,也有可能属于白盒测试。他们之间也有可能交叉。3、单元测试:编译运行程序——静态测试——动态测试 集成测试:是单元测试的下一个阶段,是指将通过测试的单元模块组装成系统或子系统,再进行测试,重点测试不同模块的接口部分。 系统测试:指的是将整个软件系统看作1个整体进行测试,包括对功能、性能,以及软件所运行的软硬件环境进行测试。 验收测试:指的是在系统测试的后期,以用户测试为主,或有测试人员等质量保障人员共同参与的测试,它也是软件正式交给用户使用的最后一道工序. 验收测试又分为α测试和β测试,其实α测试指的是由用户、测试人员、开发人员等共同参与的内部测试,而β测试指的是内侧后的公测,即完全交给最终用户测试。4、功能测试:是黑盒测试的一方面,它检查实际软件的功能是否符合用户的需求。功能测试又可以细分为很多种:逻辑功能测试、界面测试、易用性测试、安装测试、兼容性测试等。 性能测试:软件的性能包括很多方面,主要有时间性能和空间性能两种。时间性能:主要指软件的一个具体事务的响应时间。空间性能:主要指软件运行时所消耗的系统资源。 软件性能测试分为一般性能测试、稳定性测试、负载测试和压力测试。一般性能测试指的是让被测系统在正常的软硬件环境下运行,不向其施加任何压力的性能测试。稳定性测试,也叫可靠性测试,是指连续运行内测系统,检查系统运行时的稳定程度。我们通常用MTBF(错误发生的平均时间间隔)来衡量系统的稳定性,越大稳定性越强。负载测试是性能测试的一种,通常是指让被测系统在其能忍受的极限范围之内连续运行,来测试系统的稳定性。压力测试是性能测试的一种,通常是指连续不断地给被测系统增加压力,直到将被测系统压垮为止,用来测试系统所能承受的最大压力。 假设一个人很轻松的就能背一袋米,背两袋米很吃力,最多就能背三袋米,那么: 一般性能测试:我就让他背一袋米 稳定性测试:我让他背一袋米,但是让他去操场上跑圈,看多久累倒。 负载测试:我让他背两袋米去操场上跑圈,看多久累倒。 压力测试:我让他背两袋米,三袋米,四袋米......发现他最多就能背三袋米。5、回归测试:是指对软件的新的版本测试时,重复执行上一个版本测试时的用例 冒烟测试:是指在对一个新版本进行西戎大规模的测试之前,先验证一下软件的基本功能是否可以实现,是否具备可测性 随机测试:是指测试中所有的输入数据都是都是随机生成的,其目的是模拟用户的真是操作,并发现一些边缘的错误。6、关系
测试工程师1、测试工程应该具备的基本职业素质:三心二意一能力。三心:细心、耐心、信心。二意:服务意识、团队意识。一能力:沟通能力。2、如何成为一名优秀的测试工程师:内功(基础知识:计算机硬件、网络、操作系统、数据库等)、测试技术(黑盒测试中等价类、边界值、因果图等,白盒测试中的语句覆盖、分支覆盖、路径覆盖等) 1)、不断学习充电 2)、阅读原版书籍 3)、阅读缺陷管理系统中的缺陷报告 4)、阅读高手写的测试用例 5)、学习产品相关的业务知识3、SQA——软件质量保障,CMM是SQA用来监督项目的一个标准质量模型,SQA按照CMM上面各种规则来检验各种各样的项目。CMM——能力成熟度模型4、软件测试的原则: 1)、Zero bug——指的是软件没有任何bug,没有bug是不可能的,我们只能想方设法把软件的bug数控制在可以忍受的范围之内。Good enough——指的是只要软件达到一定的质量要求,就可以停止测试了。 2)、不要试图穷举测试 3)、开发人员不能既是运动员又是裁判员 4)、软件测试要尽早执行 5)、软件测试应该追溯需求 6)、缺陷的二八定理——缺陷的集群现象或是虫子窝现象 7)、缺陷具有免疫性黑盒测试技术等价类技术、边界值技术、因果图法、流程图法缺陷管理1、BUG的分类Bug严重级别(Severity,Bug级别):是指因缺陷引起的故障对软件产品的影响程度。由测试人员指定。

A错误导致了死机、产品失败(“崩溃”)、系统悬挂无法操作;B功能未实现或导致一个特性不能运行并且不可能有替代方案(包括计算错误);C错误导致了一个特性不能运行但可有一个替代方案;D错误是表面化或微小的(提示信息不太准确友好、错别字、UI布局或罕见故障等),对功能几乎没有影响,产品及属性仍可使用;E建设性的意见或建议。Bug优先级(Priority):指缺陷必须被修复的紧急程度。由Bug分配者(开发组长/经理)指定。5阻止相关开发人员的进一步开发活动,立即进行修复工作;阻止与此密切相关功能的进一步测试4必须修改,发版前必须修正3必须修改,不一定马上修改,但需确定在某个特定里程碑结束前须修正2如果时间允许应该修改1允许不修改缺陷类型(Type):是根据缺陷的自然属性划分的缺陷种类。

Build由于配置库、变更管理或版本控制引起的错误。Data数据、数据库、计算错误等。Function影响了重要的特性、产品接口、硬件结构接口和全局数据结构。如逻辑,指针,循环,递归,功能等缺陷。Interface与其他组件、模块或设备驱动程序、调用参数、控制块或参数列表相互影响的接口缺陷。Performance不满足系统可测量的属性值,如:执行时间,事务处理速率等。Requirement需求方面缺陷如(不明确、错误、考虑不全面等等)。User Interface(简写UI)人机交互特性:屏幕格式,页面排版、控件位置等方面的缺陷。其它未知错误Bug状态(Status):指缺陷通过一个跟踪修复过程的进展情况。包括Open、Fixed、Closed及Postponed等Open为测试人员新问题提交所标志的状态。为任务分配人(开发组长/经理)对该问题准备进行修改并对该问题分配修改人员所标志的状态。Bug解决中的状态,由任务分配人改变。对没有进入此状态的Bug,程序员不用管。Fixed为开发人员修改问题后所标志的状态,修改后还未测试。Closed为测试人员对修改问题进行验证后通过所标志的状态。由测试人员改变。Postponed1、由于开发时间、进度、重要程度或者技术/设计/需求等方面的原因,认为不能解决、须延期解决、或者本版不做留待到后续版本解决的Bug;2、因设计结构问题无法修改。测试人员认为是Bug,不符合逻辑,也不符合用户的要求,但开发人员则认为是按照设计做的、只能如此处理,否则修改代价太大,这种问题可以拖后处理duplicatedbug重复提交Not error测试员理解错,不是bug,测试员提错了2、提交BUG注意事项:确保重现、要用最少且必要的步骤描述BUG、简洁准确完整、一个BUG一个报告3、常见的BUG管理工具:TD、Track Record、Clearquest、Bugzilla、Mantis、JIRA测试管理测试周期:计划——测试设计——测试执行——测试评估

软件测试工具简介1、一般软件测试工具分为黑盒测试工具、白盒测试工具、测试管理工具2、MI loadrunner——性能测试,MI winrunner——功能测试,MI testdirector——测试管理工具,MI QTP——功能测试工具......


u君的日常放送


怎么说呢,其实这个行业不同的公司对专业技能的要求差别非常大,有些小公司,只要你会操作电脑,能看懂一些软件术语,基本就够用了。

但是千万别以为这就是软件测试工程师的全部,想要把这个工作干好干精需要了解大量的知识,没有特别的技能,很容易被代替

你是初中学历,入门级别的测试工程师还是可以做的,但是想深入学习,不是一件容易的事情,想做好软件测试工程师,下列技能是一定要掌握的

1 linux操作系统,包括一些简单的文件操作,软件的安装,常用地指令等等

2 shell脚本

3 数据库,常见的数据库mysql, oracle, postgrel,redis,mongodb等等等等,公司用啥你就得学啥,常见的增删改查得会

4 常见的抓包工具,fiddler,wireshark等等,之前得会其中一两个吧

5 还要对软件非常了解,说白了你是公司的质检员,你不了解产品怎么做好质检员的工作呢

其实我只列举了一部分,掌握了以上只能说明你是一个合格的软件测试工程师,要想做的比别人强,更优秀,其实远远还是不够的

软件测试越来越向以下方向发展

1 自动化

所谓自动化就是使用代码来代替一般的人工测试,这就要求你得掌握之前一种开发语言了,还有单元测试框架以及selenium等等

2 性能测试

主流的LoadRunner和Jmeter都得了解下吧

3 安全测试

这个就要求更高了,黑客懂吧,找系统漏洞

反正想做好,不容易


mynevermore


作为一个多年工作的程序员,我来回答一下这个问题

首先软件测试包括白盒测试和黑盒测试。白盒测试就需要技术来支撑了,需要写大量的脚本代码来实现,黑盒测试大部分的工作都是功能性测试,如果设计自动化测试的话也需要写一部分的代码来实现。

综上我认为如果说入门的话并不算很难,当然这是指黑盒测试,很多人特别是妹子们选择测试这个行业也挺好的,就是如果是互联网行业得话,产品上线前可能会经常加班。

初中学历的话我建议还是报一个培训班,先系统的学习一下。简单的计算机基础还是要懂得。

希望我得回答能够帮到你

详细得可以关注我给我发私信沟通


码农雷哥


根据我的理解和经验分析下。

1、入门容易,学精困难,术业有专攻,师父领进门后,你得靠自己;

2、和公司选择有关系,大公司,你可能只是测试一个模块,小公司,不累死你誓不罢休,你想你得掌握多少?

3、万变不离其宗,软件测试是个软件系统工程,掌握全面,测试点各个击破,方能庖丁解牛;

4、学会沟通交流,准确反馈测试结果和解决思路,技术再好,没有表达给程序员,成果不利于转化;

5、抱着一颗时刻学习、时刻进步的心,软件是一个快速迭代的行业,跟不上时代,追不上趋势,就会被社会淘汰。


职场说禅


入门确实挺容易的,基本就是做功能测试。如果想继续发展,那学习的东西就多了,Linux系统,数据库,编程语言也得会,比如java或者python。测试工具,uft,selenium,load runner,jmeter,postman。抓包工具也得会使用。有时候前端的知识也得会,html,css


走在测试的路上


其实软件测试和软件开发, 产品设计各有各的难点 各有各的特点,不能简单的比较谁难谁易。


盘塔扫地僧


看我简介你就懂了😂😂😂😃


悟空房说


初中学历?那你可得用点功了……


分享到:


相關文章: