【我的测试之路】测试的精髓:自学测试(下)
我们接着上一篇文章《自学测试(上)》讲述到自学测试,我罗列了10条相关的建议。接下来我将详细分享一下,我是如何做到。
1.若你是既无开发经验又无计算机计算基础的人,建议你还是先买书看看测试理论相关的知识点。
首先我们要弄明白两点,一是什么叫做测试?而所谓的测试,它是去寻找程序中发现的错误,错误俗称bug(虫子)。二是如何开展测试工作?开展测试工作之前,我们要熟悉整个测试流程。一般是分为以下几个方面:
(1)理解产品需求
根据产品需求梳理产品功能点,理解整个产品的业务流程,为后续测试做铺垫工作。
(2)制定测试计划
根据产品需求拆分业务功能点,进行安排测试周期。
(3)设计测试用例
根据产品需求,进行设计测试用例。
(4)执行测试用例
可以在第一遍功能测试执行测试用例。
(5)进行各种测试:冒烟测试、功能测试、集成测试、系统测试、验收与封版测试。
(6)输出测试报告
根据最后的封版测试情况,进行输出测试报告。
2.找一份测试相关的工作,从零开始学习测试;一步一个脚印,脚踏实地的跟着公司的测试同事一起学习测试,一起探讨测试。
当你想从事软件测试行业工作的话,那就请去找一个初级测试工作,从最基本的手机测试学起。由于手机是我们日常生活中使用频率很高的电子设备,那样学习起来成本低、上手快,也能快速积攒自己的测试知识。进入到一家公司开展测试工作时,学会多问、多思考问题、多做工作总结笔录。
3.理解测试是什么?测试什么产品?如何测试这些产品?测试简而言之就是一种寻找程序中潜在bug的一个过程,说得再直白一点测试就是寻找产品中那些不可用、不可点击、不可交互的功能点产生的问题缺陷。
理解测试到底是什么?测试就是寻找任意一个软件产品中未知的错误而进行的活动。弄清楚自己所测试的产品是什么架构,例如手机上的应用都是属于C/S架构,而电脑上能打开的网址之类的web产品就是属于B/S架构。
4.自学测试需要多问多实际操作,多写测试说明文档,加深自己对产品业务流程的理解。
关于这一点我感触颇深,由于从开发人员转为测试人员,整个思考问题的模式都是180°转变。需要站在用户角度、产品验收者的角度去探索测试。进行对产品需求的理解,需要对于复杂的产品业务逻辑,进行写详细的说明文档。这不仅仅能加深自己的对产品需求的理解,更加便于自己对整个产品业务流程的理解。
5.先学会理解产品需求说明文档,再学会提炼需求。
当我们拿到相关的产品需求文档或是产品原型图时,要学会根据产品需求进行提炼需求。我们可以通过xmind思维导向软件进行,梳理整个的产品功能点。譬如产品分为哪个部分,每一部分又是由哪些小的功能点组成。每一个小的功能点又是有多少种业务使用场景,我们都需要逐一梳理转换成test case(测试用例)。
6.学会根据产品需求与设计来设计测试用例。
接下来就是我们要讲述到的根据产品需求,进行设计测试用例。只有我们把整个的产品需求弄清楚,所有的业务逻辑理解透彻,所有的用户使用场景整理明白。如此一来,我们才能设计更丰富的测试用例,才能提高测试用例的覆盖度。
7.学会提交bug的流程规范。
关于发现任何软件的测试bug,那么我们需要掌握提交bug的流程规范。
我们需要用到一个专业的bug管理系统,例如Jira、QC、bugfree、蝉道等等bug管理工具。
bug主要分为以下几个主要部分:
1)标题
2)前置条件(若有则写)
3)操作步骤(按照复现问题的操作步骤,一步一步来写出来着)
4)实际结果:描述复现问题的最终反应结果。
5)预期结果:描述按照以上操作,本应该出现的设定结果。
bug主要流程分为new(新建)—》resolved(已解决)—》closed(关闭)—》reopen(再次打开)
新建:测试人员发现问题后,第一次在bug系统里进行按照提交bug规范流程进行创建bug。
已解决:开发人员已经着手解决测试bug,将bug的状态设定为已解决。
关闭:测试人员在产品修复版本上进行验证测试通过开发已解决的bug,将其设定为关闭。
再次打开:测试人员在产品修复版本上进行验证测试已知bug,发现问题未得已解决则将bug状态设定为reopen。让开发人员进行进一步复查问题与重新进行定位问题并着手解决问题。
8.学会根据产品计划,来制定一份合理的测试计划。
关于测试计划的制定,一定是根据产品计划来进行设定。
哪些产品功能优先完成,哪些是延后完成。我们作为测试人员都要一目了然,要不然就无法进行制定一份完善的测试计划出来。
测试计划,主要包括测试的目的说明、测试环境搭建、测试用例设计时间、测试人员分配、功能点的划分、测试技术、测试报告编写时间等等。
9.掌握测试方案的编写。
而测试方案的编写,它的着重点是在测试技术方案、 合理的测试流程、测试建议、风险评估等等。
测试技术主要分为黑盒测试与白盒测试,我们一般工作中用到的这两种是非常多。然而黑盒测试即功能性测试,按照产品说明文档以及UI设计、编写好的测试用例进行测试。白盒测试是测试产品程序的代码逻辑,一般是需要测试人员具备一定的开发能力进行编写测试脚本去测试程序的代码逻辑。
合理的测试流程一般分为接口测试、冒烟测试、功能测试、集成测试、功能测试、系统测试、验证测试,每一个测试阶段需要有时间线来统筹管理。
测试建议就是针对产品测试提出更加合理的产品需求,测试周期的设定。
风险评估是把产品潜在的风险进行分析写出来,并写出相应的风险应措施。
10.初学测试,建议先从做手机app测试开始做起。
若是刚接触测试,零基础的测试人员,建议还是从大家都很熟悉的手机测试进行涉足测试行业。
手机app测试虽然门槛低,那是针对功能测试,但是一但涉入就没那么简单。为什么建议大家从手机app测试入门,由于大家对手机并不陌生,哪怕遇到棘手问题也会有自己的简单判断。例如手机断网测试app,手机连Wi-Fi与4G网络进行测试app的某个功能请求速度肯定不一样。那是大家都心知肚明,由于大家对Wi-Fi、4G网络并不陌生,由于每天拿手机不是连家里Wi-Fi就是外出连4G网络。
其实无论是自学测试还是自学其它任何东西,我们都要有一颗持之以恒的心,坚持就是伟大的胜利。
带着问题去学习测试,吾将上下而求索,路漫漫其修远兮……。
生活与工作都需要花来点缀