测试~测试用例的设计方法

用例的输入与输出明确。

一条用例只有一个预期结果。

用例的可维护性好。

用例对需求的覆盖率高,

暴露程序Bug的能力强力

基于需求的设计方法

========================================================================

  • 基于需求的测试是一种最根本的软件测试,重点关注以下两大关键问题。 (1)验证需求是否正确、完整、无二义性,并且逻辑一致。

(2)要从“黑盒”的角度,设计出充分并且必要的测试集,以保证设计和代码都能完全符合需求。

用户需求:

购买3000块钱以内XX的智能手机

测试用例:

1.价格<=3000元

2.品牌为XX

3.智能手机

4.手机功能验证:

4-1.打电话

4-2.接电话

4-3.发短信

4-4.收短信

等价类

==================================================================

  • 依据需求将输入(特殊情况下会考虑输出)划分为若干个等价类,从等价类中选出一个测试用例,如果这个测试用例测试通过,则认为所代表的等价类测试通过,这样就可以用较少的测试用例达到尽量多的功能覆盖,解决了不能穷举测试的问题。

  • 有效等价类:对于程序的规格说明书是合理的、有意义的输入数据构成的集合,利用有效等价类验证程序是 否实现了规格说明中所规定的功能和性能

  • 无效等价类:根据需求说明书,不满足需求的集合。

超市买水果

有效等价类:苹果、桃子、梨

无效等价类:青菜、米、饮料,…

边界值

==================================================================

  • 边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界

输入框长度为1-11,取边界值为:1、11、12、0

因果图

==================================================================

  • 因果图是一种简化了的逻辑图,能直观地表明程序输入条件(原因)和输出动作(结果)之间的相互关系。因果图法是借助图形来设计测试用例的一种系统方法,特别适用于被测试程序具有多种输入条件、程序的输出又依赖于输入条件的各种情况。

  • 因果测试几种基本关系

  1. 恒等:如果原因为真,那么结果必定为真

  2. 与: 只有2个原因都为真,那么结果为真

  3. 或: 2个原因中有一个为真时,结果就为真

因果图法设计测试用例的步骤如下。

(1)分析所有可能的输入和可能的输出。

(2)找出输入与输出之间的对应关系。

(3)画出因果图。

(4)把因果图转换成判定表。

(5)把判定表对应到每一个测试用例

正交排列

===================================================================

  • 正交法的目的是为了减少用例数目。用尽量少的用例覆盖输入的两两组合

  • 正交试验设计(Orthogonal experimentaldesign)是研究多因素多水平的一种设计方法,它是根据正交性,由试验因素的全部水平组合中挑选出部分有代表性的点进行试验,通过对这部分试验结果的分析了解全面试验的情况,找出最优的水平组合。正交试验设计是一种基于正交表的、高效率、快速、经济的试验。

因素(Factor):在一项试验中,凡欲考察的变量称为因素(变量)

水平(位级)(Level):在试验范围内,因素被考察的值称为水平(变量的取值)

正交表的构成:

行数(Runs):正交表中的行的个数,即试验的次数,用N代表。

因素数(Factors):正交表中列的个数,用C代表。

水平数(Levels):任何单个因素能够取得的值的最大个数。正交表中的包含的值为从0到数“水平数-1”或从1到“水平数”,用T代表。

正交表的表示形式: L=行数(水平数*因素数) L=N(TC)

正交表的两条性质:

每一列中各数字出现的次数都一样多。

任何两列所构成的各有序数对出现的次数都一样多,

正交法设计测试用例的步骤:

1、有哪些因素(变量)

2、每个因素有哪几个水平(变量的取值)

3、选择一个合适的正交表

4、把变量的值映射到表中

5、把每一行的各因素水平的组合作为一个测试用例

6、加上你认为可疑且没有在表中出现的用例组合

  • 案例:

继续以注册为例(类似工具可以使用微软的PICT工具):

因果法设计测试用例可以帮助测试人员理清输入和输出的关系,但是对于比较复杂的输入和输出,会耗费大量时间

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

读者福利

秋招我借这份PDF的复习思路,收获美团,小米,京东等Java岗offer

更多笔记分享

秋招我借这份PDF的复习思路,收获美团,小米,京东等Java岗offer

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
i4DiR-1713744066781)]

更多笔记分享

[外链图片转存中…(img-BB03zyvU-1713744066782)]

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

  • 27
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值