设计测试用例的万能公式
设计测试用例的万能公式
现在有一款产品,要求我们对“门锁”设计测试用例,假如你是测试人员,你会怎么设计
可以看出,⽤例的设计最重要的⼀点是保证功能是正确的。上图给出的案例,在互联⽹企业中,这样去设计测试⽤例的⾮常少,缺乏经验的同学往往以这样的思路去设计。
1、常规思考+逆向思维+发散性思维
正确设计测试用例的思想:常规思维+逆向思维+发散性思维
- 测试⽤例的编写不仅应当根据有效和预料到的输⼊情况,⽽且也应该根据⽆效和未预料到的输⼊情
况。- 检查程序是否“未做其应该做的”仅是成功的⼀半,测试的另⼀半是检查程序是否“做了其不应该
做的”。(是上⼀条原则的必然结果)- 计划测试⼯作时不应默许假定不会发现错误。
明⽩了设计测试⽤例是思维的正确还往往不够。若仅仅通过头脑⻛暴去设计测试⽤例,那么当我们⾯对⾯试官时,能够想出来的⽤例是寥寥⽆⼏的,所以在设计测试⽤例的时候需要有思路的去设计。
2、万能公式
设计测试⽤例的万能公式:功能测试+界⾯测试+性能测试+兼容性测试+易⽤性测试+安全测试。
功能测试
功能测试是⼀个试图发现程序与其外部规格说明之间存在不⼀致的过程。外部规格说明是⼀份从最终⽤⼾的⻆度对程序⾏为的精确描述。功能测试通常是⼀项⿊盒操作。在进⾏功能测试时,需要对规格说明进⾏分析以提炼测试⽤例,本课程中讨论的具体设计测试⽤例的⽅法尤其适⽤于功能测试。然⽽,不仅是⼯作中还是⾯试中,可能会存在需求不明确的功能?这种情况下该如何进⾏功能测试?
- 查找其他相关⽂档,来帮助理解所要测试的产品需要完成的⽬标;
- 尽量多参加项⽬组内的会议,⽐如需求讨论、设计讨论、计划讨论等,能够加深对产品的理解;
- 召集相关⼈员,对你整理的结果进⾏讨论,通过评审后,这份⽂档就可以作为依据来设计你的case了;
- 如果是⼀款已经上线的产品,可以多使⽤产品,有不懂的问产品经理;
- 也可以去看历史bug,可以了解到一些需要关注的东西。
界⾯测试
对软件界⾯上所有的内容都需要进⾏测试。
要求:
性能测试
性能测试和功能测试的区别是:功能测试检查软件是否做了,⽽性能测试测试软件做的好不好。
兼容性测试
软件是部署在硬件系统之上,并依赖所需要的软件环境。如QQ可以在PC端打开,也可以在移动端打开;移动端⼜分为IOS系统和Android系统,且市⾯上⼿机⼜有不同的品牌、不同的机型、不同的版本。软件是否能够在不同的环境下正确运⾏需要测试⼈员进⾏验证。
问题:既然市⾯上有众多版本的机器,那么在执⾏兼容性测试时难道所有的机型都需要全⾯覆盖吗?
选取标准:
- 优先选择使⽤当前产品top级别的机型进⾏测试
实际在企业中,后台是可以获取到使⽤产品的机型,并以报表的形式统计在后台,供产品⼈员或- 其他⼈员制定策略参考。
- 选择主流的浏览器/机型进⾏测试。
易⽤性测试
易⽤性测试的标准是检查产品是否具备简单易上⼿的属性。假如测试⼈员从来没有安装或使⽤过该产品,作为⼀个新⽤⼾,对当前产品是否能够快速适⽤产品的使⽤流程。
安全测试
安全测试和性能测试⼀样都是⽐较⼤的领域。常⻅的安全问题如:
- 隐私数据明⽂显⽰。
- 参数未强校验导致SQL注⼊。
- 越权:普通⽤⼾也可以执⾏管理员权限的操作。