注意:软件需求 需求文档 产品规格说明书 都是一个东西
1. 什么是需求?
满足用户期望或正式规定文档 (合同、标准、规范)所具有的条件和权能,分为用户需求和软件需求。
- 用户需求:可以理解为甲方提出的条件,如果没有甲方那么就是终端用户使用产品时必须要完成的任务。该需求一般比较简略。
- 软件需求:该需求会详细描述开发人员必须实现的软件功能。
2. 什么是bug?
程序与规格说明之前不匹配
- 当规格说明书(需求文档)里存在,并且正确,程序与规格说明之间的不匹配就是错误(产品经理可能写的有问题,要注意正确)
- 需求规格说明书没有提到的功能,判断标准以最终用户为准:当程序没有实现其最终用户合理预期功能要求时,就是错误。
3. 软件测试用例是什么?
测试用例(Test Case)是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果等要素。
测试用例解决了两大问题:测什么,怎么测
例如 我们测试注册模块是否OK:其中 测试环境 chrom Win11 ,操作步骤 进入注册页面进行注册 ,测试前提 系统正常运行 邮件服务器已开启。
4. 软件的生命周期
又叫做 开发流程 / 开发模型
需求分析:分析用户需求是否合理?(市场分析、技术分析.......)
计划:指定需求执行计划(什么时候开始、结束、耗时多久)
设计:将需求细化成一个个任务,进行技术设计(设计哪些接口,采用哪些技术)
编码:开发人员按照设计文档来进行编码
测试:测试人员参考测试用例来执行测试
运行维护:项目上线之后对产品进行线上的维护 ( 运行维护又分为 修复性维护、完善性维护、预防性维护... )
修复性维护:对项目中没有发现的问题及时进行修复
完善性维护:对功能进行完善
预防性维护:居安思危,对可能出现的bug进行避免
5. 测试的生命周期
需求分析---->测试计划---->测试用例的设计(开发测试)---->测试执行---->测试评估
面试:产品上线后出现问题测试人员怎么办?
测试完成之后,产品进行上线,测试人员也要时刻关注产品线上运行情况,是否出现产品质量问题,如果出现了问题,测试人员应该做哪些事情?
尝试复现(确定是普遍问题还是个别问 题),复现成功后通知项目组所有成员进行问题的定位
尝试定位问题出现的原因,帮助开发人员尽快的定位问题,并解决问题
反思问题,做出总结(为什么会出现这样的问题,后续如何避免)