设计功能测试用例是软件测试人员的一项基本技能。然而,许多新手测试工程师对基本的测试概念、想法和技术的了解并不充分,甚至在设计测试用例时大部分都是靠着直觉和经验。因此,这些新手测试工程师的测试用例设计既不全面也不科学。那么新手应该如何设计功能测试用例呢?

一、显式功能性需求:指的是需求中明确规定且用户可以感知到的需求,比如“访客用户访问管理员页面时会跳转到登录页”。常用的方法有三种:

1、等价类划分法

我们如果想测试一个功能的最傻的办法就是穷举。比如说一个密码验证功能,我们把所有的可能的密码都尝试一遍,自然就可以覆盖掉到所有的问题与可能。但是这种穷举的方法明显是做不到的。因此我们要用到等价类划分法。等价类划分法就是说我们将所有可能的输入数据或操作分为多组不同的子集,每个子集中的数据与操作对发现程序中的潜在错误都有同等的效应。这样我们就将一个子集称为一个等价类。

2、边界值分析法

在我们在测试合理与不合理的数据的时候,往往最容易出现问题的就是合理与不合理的边界,这时我们就需要使用边界值分析法了。边界值分析法,就是对恰好大于、小于和等于边界的值进行测试,来验证程序是否做到了合适的处理。边界值分析法一般是作为等价类的补充,来加强测试功能实现的程度与健壮性保障的程度,是否符合规格。

3、错误推测法

在测试的时候就算我们使用了等价类划分法和边界值分析法,也很可能会遗漏一些需求中没有清晰提出,技术上比较隐蔽的错误。这种错误就需要测试人员通过已有的经验、对功能实现可能的方法的理解或直觉,来推测出软件中可能存在的各种错误与场景,然后编写测试用例来进行验证,这就叫做错误推测法。比如,登录超时后,某个需要权限操作的功能在使用的时候,是否跳到了登录页,还是直接报错,甚至说依旧可以操作。这种错误是需要测试人员一定的经验、技术积累与直觉的。

二、非功能性需求:指的是用户无法直接体验到的,非具体功能性的需求,但这种非功能性需求在做功能性测试的时候也会涉及到,因为很多非功能性的需求会影响到功能的可用性与用户体验,比如性能测试。

1、兼容性测试

兼容性指的是开发的软件是否在各种平台都可以使用。比如我们开发一个网站,我们的用户可能会用到各种不同的浏览器访问我们的网站。这样我们在测试的时候,就不能只考虑到某一种浏览器。我们需要考虑到多种浏览器的兼容性。

2、安全性测试

我们的测试人员还需要关注到开发软件的安全性。这涉及到:用户隐私信息是否加密;需要权限的资源是否有没有权限也可以被拿到的风险;会不会受到跨站脚本的攻击;会不会受到sql注入攻击等等。

3、压力测试

测试人员也需要考虑软件是否能够承载其需求所需的压力,例如:软件是否能在合理的时间内响应用户行为;软件是否可能承载足够的请求;软件在处理大数据量时会不会产生资源锁死。

在软件测试过程中,如果测试用例设计不全面,就会导致测试结果出现严重的偏差,甚至影响整个产品的研发周期。因此作为软件测试工程师一定要注重测试用例的设计。尤其是对于新手,刚开始做测试工作时一定要注重积累和学习。

以上内容为大家介绍了新手软件测试员如何设计功能测试用例,本文由多测师亲自撰写,希望对大家有所帮助。https://www.duoceshi.com/xwzx-hydt/1246.html

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部