刚进入职场工作的软件测试小白,由于对软件测试工作的了解有限,对于实施软件测试工作的时候,经常会两眼懵圈,不知道自己该从哪方面下手。以致于自己的工作成绩很不理想,无法满足领导的要求,严重的影响了自己的职业发展。那么,对于软件测试小白来说,应该如何快速上手软件测试的工作呢?
什么是软件测试
最近公司新来了一个同事小婷,小婷是实习生,之前没有任何工作经验。领导安排我带她学习软件测试的工作,我以前工作中也带过新人,根据以前带新人的经验,总结了一些能让新人快速上手软件测试的工作的小技巧。把这些小技巧交给小婷后,她很快就上手了工作,不到一个月就能自己独立工作,不再需要人手把手教了。
首先我们先搞清楚,什么是软件测试?软件测试就是:发现软件中的缺陷,验证产品是否满足用户需求,对产品质量进行全面评估。
以我目前工作来说,工作中运用的是常见的软件研发V模型,按照开发阶段来分类,软件测试分为:单元测试,集成测试,系统测试和验收测试。
单元测试:由开发人员自测,对程序最小可测试单元(模块或者组件)进行的测试工作。
集成测试:在单元测试的基础上,将各模块按照设计要求组装后,由开发人员对组装后对各模块间接口、应用间接口进行测试。
系统测试:将已完成集成测试的模块或应用与其他外部相关系统和环境组合在一起后,由测试人员对系统功能和操作流程进行全面的测试。
验收测试:完成系统测试后,产品发布前进行,由需求提出方进行测试,也有可能会找第三方公司进行测试。验收测试主要测试软件产品是否符合预期业务需求,其测试结果将作为软件能否投产的依据。
软件测试的目的是:
a.提前发现问题,减少损失。
b.测试人员对软件的反馈信息,是软件风险评估的一大依据。
c.测试人员测试到软件产品本身的缺陷时,也是对开发人员开发过程进行测试,如果一个软件产品开发完成之后发现了很多缺陷,这说明此软件开发过程很可能是有问题的。
项目前期,开发移交测试前:
了解需求内容并进行分析:需求提出方给出需求文档或组织需求分析会,会上讲解这个需求的相关信息。测试人员对需求进行分析,初步判断需求合理性。
需求分项目级和日常优化级。
项目级需求:需要关联多个系统的,要多系统合作,所有流程相对要求比较严格。项目级需求分主办和辅办,主办系统需要主导并跟踪所有辅办系统测试进度。辅办系统需要根据主办系统给出的测试计划完成测试任务。不管是主办还是辅办,项目级需求的要求都是最严格的。因为是新软件或者新功能,上手有难度,所以一般是由资深测试人员负责,如果工作量太大,后期会让初级测试人员根据案例进行一些简单功能的测试工作。
日常优化需求:日常最多的就是优化版本,都是对系统已有功能或程序进行优化,只需熟悉软件原有功能交易流程,没基础的小白也能快速上手。
制定测试计划:需求确定后,根据项目计划,制定测试的计划,包括测试人员安排,需求分配,测试开始时间,结束时间等等。测试计划的另一个目的的对测试工作量进行评估,评估后对所需测试资源就会更加清晰明了,可以提前准备测试人力和测试环境,测试工具等等。
产出测试用例:根据分配到的需求内容编写测试用例,可以先用思维导图工具列出测试点,再细化测试点编写测试用例。测试用例编写完成后,需要组织开启用例评审会议,参会人必须有:开发人员,需求提出方,测试经理,项目经理等等。
项目中期,开发移交测试后:
冒烟测试:开发人员开发完成后,首次移交测试,测试人员应先进行冒烟测试,对重点功能进行测试,不能有流程性的缺陷存在,否则测试人员可以打回给开发。
系统测试:冒烟测试通过后,就可以进行系统测试了,系统测试是全量执行测试用例,对系统功能和操作流程进行验证。
跟踪缺陷处理:在测试过程中发现bug,把这些bug提交给开发以后,还需要测试人员去跟踪处理。测试人员要了解清楚bug产生的原因,需要怎么解决等等。
进行回归测试:回归测试主要分为两种,一种是测试人员提交了bug,开发修复这个bug后,针对这个bug进行回归测试。
还有一种回归测试是完成了整个系统测试后,在上线投产前,进行的系统全量性测试。这次测试不光要测试本次改造的功能,原有的未改造的功能也需要回归测试一遍,确保新功能对原功能没有影响。
项目后期,测试完毕后:
编写测试 告:在测试完成后编写,包括:本次测试用到的人力各自负责的哪些内容,是否有遗留缺陷,遗留缺陷的处理方式是什么,投产后是否有风险,如果有的话,要写明风险点等等。
编写测试总结 告:项目测试结束后,针对此次项目测试中遇到的问题,使用的工具,测试流程,数据准备等等,产出测试总结 告,以便后续有新人来了,可以以此为培训文档使用。
明确自己在测试过程中的角色定位
按照项目流程来说,主要分为:开发人员,测试人员,验收人员。开发人员负责单元测试和集成测试。测试人员负责系统测试。验收人员在系统测试完成后进行验收测试。各个角色的侧重点不同。开发只需保障测试的程序能运行成功。测试需要对整个软件的功能及性能等等方面进行充分的测试。验收人员是站在用户的角度进行测试,主要关注的是软件是否符合用户需求。
测试经理:负责整个测试管理工作,包括制定测试计划,跟踪并把控测试进度,管理测试环境,测试工具,协助测试人员解决问题等等。
初级测试人员:主要工作就是根据测试用例,完成软件相关功能的测试,并对测试过程中的缺陷进行跟踪处理。
在开发移交测试后,资深测试人员进行版本部署。部署完成后,由初级测试人员,根据测试用例,进行相关功能的测试,测试通过就执行案例。如果在测试过程中发现有缺陷,由资深测试人员或测试经理确认后,提交缺陷给开发。开发修复这个缺陷后,再对这个缺陷进行回归测试。
弄清工作流程和被测系统或软件的业务流程
弄清工作流程很重要,大部分公司的工作流程都是大同小异的,最开始进行需求分析,然后是制定测试计划,编写测试案例,再到执行案例,测试结束后编写测试 告。
一般新人,以手工进行功能测试为主,主要的工作有两块:执行案例和缺陷跟踪处理。根据资深测试人员编写的测试用例,按照用例步骤,执行测试操作。测试过程中发现缺陷后,要对缺陷进行跟踪处理,直至缺陷关闭。
想要快速上手工作,一定要了解清楚被测软件的背景知识和业务流程。要了解被测软件是什么类型,有哪些功能,有什么业务类型,这些业务的业务流程是怎么样的。有涉及专业词汇的,还要理解这些词汇的意思等等。
工作流程和业务流程都熟悉了,还要学会使用工作中用到的各种工具。比如测试管理工具,缺陷管理工具,配置管理工具,还有日常办公用到的工具等等。
总结:软件测试对于新手来说,上手的难度不大,特别是初级的软件测试工作。新人一开始都是从简单的UI功能测试做起,只要弄清楚软件测试的工作流程,熟悉负责系统模块的业务流程,学会使用测试工具,很容易就能快速上手工作了。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!