一、功能测试的定义:
功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。
二、如何做好功能测试
1、首先学习软件测试基本知识和软件流程。功能测试最开始最基础的就是分析需求编写测试用例,测试是把握质量的守关人,保证不漏测的第一步就是要编写,尽可能全面的测试用例,可以学习用例编写方法、黑盒测试方法,阅读一些书籍,比如:<软件测试艺术>;此外,根据迭代所处阶段测试可以做不同的事情,需求宣讲阶段制定测试计划、分析需求编写测试用例;开发阶段了解实现技术细节准备开发自测用例;提测后按用例测试,每天抛出风险和进度,根据执行质量考虑是否测试多轮,根据质量判断是非可以上线发布;上线后及时根据运营问题;
2、基础打牢后多实践。测试是讲究经验的职业,从简单需求开始,制定测试计划,编写用例执行,执行过程及时调整计划爆出风险和进度给团队知道非常重要。从简单需求到复杂需求到迭代跟进,除了执行,技术了解和bug跟进分析很重要,了解技术实现可以帮助你设计更全面的用例,更好评估功能质量风险;bug分析也是,往往一个经典的bug分析出来会发现更多隐蔽问题;功能测试完成建议编写测试总结,对测试方案、逻辑实现、发现问题和自己分析过程进行整理;
3、进行下去后会更加深入了解被测对象,从而可以做更多深入测试。比如稳定性测试,性能专项测试,接口测试等;团队合作下去可能会发现一些流程上的问题,可以思考如何优化流程让合作更高效,以及沉淀文档和规则;迭代跟进后会有一些质量效率问题,需要思考如何优化:自动化、精准测试、重复工作脚本化、工具化;根据每个迭代总结和测试数据分析也需要思考哪些数据待提高:漏测情况、bug发现情况;用户反馈问题多了,可以思考如何专题解决、如何快速定位……将这些工作完成并记录沉淀下来形成方法论,多做分享扩大自己影响面;
4、团队扩展后就需要思考如何培养新人,如何开展团队工作,帮助大家一起进步、高效工作;项目支持是基本,在这基础上多发现问题多实践多思考,扩大自己影响。
三、功能测试的内容:
1. 正常功能
(1) 检测各模块的正常情况的处理是否能够正确执行;
(2) 检测系统的正常业务处理、正常流程是否能够正确执行;
(3) 检测相关联的各个子系统在正常情况下的协调运作情况。
2. 异常功能(异常情况包括但不限于以下情况:数据库服务器死机、数据表毁坏、网络故障、软件服务器故障等。
(1) 检测模块的异常情况处理是否能够正确执行;
(2) 检测系统的异常业务处理、容错处理是否能够正确执行;
(3) 检测相关联的各个子系统在异常情况下是否能够协调运作且能否形成闭环。
3.边界测试,检测当输入或输出为最大、最小、临界值时模块或系统能否正确处理。
4.界面测试
(1) 检查界面风格是否符合系统开发规范;
(2) 检查界面能否支持操作顺序的无序性;
(3) 检查界面操作是否方便,是否有快捷键,是否有联机帮助。
5.接口测试、检测系统与其他软、硬件系统接口的正确性。
6.错误处理测试
(1) 检查对不合格的输入以及错误数据、错误操作是否进行有效性检查和非法性判断;
(2) 检查错误提示的描述是否明确,是否容易进行错误定位。