先增加两条知识点:
灰度测试:先发布部分功能更新,然后看用户反馈,再去发布另一部分功能的更新
A/B测试:先发布的功能让A部分的用户进行更新,再根据用户的反馈,再更新B用户对应的功能
一、软件测试需求分析
1.什么是测试需求分析?
测试需求就是根据需求规格说明书明确测试的内容,去细分需求(提取测试点)
测试需求应全部覆盖已定义的业务流程,以及功能和非功能方面的需求
功能需求:业务流程(优先考虑)
非功能需求:界面,文档,兼容性,易用性,性能,安全性
2.什么是测试点?
测试点是软件的最小单元(软件包含多个功能点,每个功能点包含多个子功能(测试点))
二、软件测试需求的必要性
1.测试需求分析的目的?
测试需求分析是编写测试用例的依据
有助于保证测试的质量和进度
测试需求是衡量测试覆盖率的重要指标
2.测试需求分析很重要,因为它影响着发布上线发布上线的标准是测试覆盖率趋近于100%,Bug遗留率趋近于0%
测试覆盖率包含:测试用例覆盖率,测试用例执行率,测试点覆盖率
测试点覆盖率(测试需求分析)是决定测试覆盖率的重要指标
三、如何对软件测试需求进行分析(重点)
1.需求分析的步骤
1)查阅需求规格说明书(原型图)
初步熟悉被测软件的核心业务流程
再针对某个功能,细化需求,列出测试点
2.一个页面如何进行测试需求分析?
1)进行界面检查(参考原型图,查看界面是否一致)
2)依次分析每个输入项,按照从上到下,从左到右的顺序来进行分析分析的内容:约束限制,是否必填,是否重复,隐形需求(需求中没有提及,但是应该需要进行验证,需要常识,熟悉业务,根据成熟同类产品推断,从而挖掘需求 eg:手机号码,校验长度)
3)按钮
根据业务逻辑的先后顺序来进行依次分析,一般按钮存在(什么条件)操作成功,(什么条件)操作失败,验证操作结果
需求验证按钮操作结果,验证交互功能(关联功能)
eg:验证注册成功(注册的账号能登录成功)
测试点思路步骤:
1)正常功能:是否可以正常提交2)单个功能项验证(正常+异常)
规则:按顺序从上至下,对每一个输入项进行验证1>数据长度,数据类型验证,必填项验证,重复验证码
2>限制约束验证
3>隐形需求:充分熟悉产品业务,挖掘隐性需求
3)功能交互验证
模块之间传递的信息和数据,对存在功能交互的功能项
4)非功能性测试
界面、易用性,兼容性,安全性,性能压力
四、面试题
1.需要隐形需求怎么办?
充分熟悉产品,参考成熟产品,站在用户的角度去考虑,从而挖掘需求。2.给你一个带有logo的水杯,你会如何去测试?
原则:按六大功能原则分,建立测试思维
首先要分析功能和非功能:
功能:装水,是否漏水,装热水,冰水,茶水,饮料,是否保温非功能:
界面:logi是否与原型图一致,是否美观,是否掉色,材质易用性:防滑,防烫,带手把,会不会刺到嘴巴,携带是否方便
兼容性:是否能装其他的液体
安全性:装热水的时候,会不会有毒
性能:防摔
3.你会如何去测试朋友圈,购物车等熟知的软件产品。(支付,优惠券,二维码)
首先测试功能:能不能刷出朋友圈,是否是按照时间来排序的,能否刷到最新的,能否查看朋友圈图片/文字,能否给朋友的朋友圈点赞,能否给朋友的朋友圈评论,能否在朋友圈跟朋友交流
其次是非功能:
界面:是否和原型图一致
易用性:是否方便使用,发布/刷新/查看/评论/点赞等功能是否通俗易懂好上手
兼容性:朋友圈 文字/图片是否都可以发,图片或者文字最多能发多少张多少字,不同品牌的手机和型号朋友圈是否都能正常使用
安全性:朋友圈屏蔽掉一些人的是否,那些人是否还可以查看,不是共同朋友是否还能查看到评论
性能:同时多个用户同一时间发朋友圈,微信是否会不稳定