如何设计测试用例?

如何设计一个好的测试用例?

先问是什么,什么才是一个好的测试用例?

我以前会认为,能尽可能多的找出测试对象的bug的用例就是好的用例。

现在根据这个课程我想把这个观点再完善一下:一个好的用例,必须能够覆盖所有等价类和边界值。因为一旦真的足够覆盖了等价类和边界值,那么这个用例自然也能发现问题。

什么是等价类?可以理解为输入值。一个可以输入具体数值的系统,不可能把每一个可以输入的值都验证一遍,所以需要等价类。

比如负数为一个类,正数为一个类。或者按系统功能划分,比如这是个银行系统,超过2000就需要手续费,那么2000以下,2000,2000以上就可以分为三个等价类进行验证。等价类的作用就是输入一个数值,就可以覆盖验证这个类型数值的测试。

而边界值,就是等价类的一个补充,因为很多错误经常发生在边界值的位置。还是以前面的银行系统为例,以2000为测试线,那么1999和2001都是边界值,同样的,0,1,9999也都可以是边界值。

除了等价类和边界值,在经历过对测试系统一段时间的摸索测试,对于它曾经出过bug的地方,还有你个人的经验,也可以针对性设置测试用例。

虽然说理清了以上这些,基本就能设计出一个合格的测试用例了,但一个好的测试用例,最重要最核心的还是一个点:使系统的功能点满足用户的需求程度。

这就意味着测试工程师需要对被测软件需求有着深入的理解,也需要理解用户对这个软件的需求。所以测试人员最好从项目立项就开始介入,不能错过每一个需求评审。只有理解了业务需求,才能设计出有针对性的用例。

在进行具体的用例设计时,需要搞清楚每个业务需求所对应的软件功能,然后分析出这个功能所对应的测试点,最后再把这些测试点设计成设计用例。

如此,就是一个完备完善的测试用例了。

除了这些,以下是三个设计测试用例时最好掌握的技能。

1.理解软件架构。作为一个测试工程师,不可将软件看作一个黑盒了事,必须对内部架构有所了解。如数据库连接方式,数据库的读写分离,消息中间件kafka的配置,缓存系统的层级分布,第三方系统的集成等。

2.理解软件的设计和实现细节,深入理解软件内部处理逻辑。可以尝试通过代码覆盖率找出可能的测试遗漏点。

3.引入需求覆盖率和代码覆盖率来验证测试用例的完备性。

以上这些说明,想成为一个测试高手,我还有一段路要走。

以上内容为《软件测试52讲》学习笔记day2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值