目录

一、测试用例的概念

二、设计测试用例的方法

2.1 等价类

2.2 边界值

2.3 错误猜测法

2.4 场景设计法

2.5 因果图

2.6 正交排列(使用较少)

三、测试方法

黑盒测试

白盒测试

灰盒测试

四、常见的测试用例面试题

1、测试用例是否是越多越好?

1、设计水杯的测试用例


一、测试用例的概念

测试用例是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果等要素。好的测试用例是一个不熟悉业务的人也能依据用例来很快的进行测试。

评判测试用例的标准

  • 用例表达清楚,无二异性
  • 用例可操作性高
  • 用例的输入与输出明确,只有一个预期结果
  • 用例的覆盖率高
  • 用例可维护性高

设计测试用例的万能公式:功能测试、界面测试、性能测试、兼容性测试、易用性测试、安全测试

二、设计测试用例的方法

2.1 等价类

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

等价类分为有效等价类和无效等价类。

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

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

2.2 边界值

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

1. 输入框长度为 1-11 ,取边界值为: 1 、 11 、 12 、 0
2. 运动员的参赛项目为 1-3 项,取边界值为: 0 项、 1 项、 3 项、 4 项
3. 查询面页面有 999 行,每 50 行为一页,取边界值为:输出 0 行、 1 行、 50 行、 51 行、 999 行

2.3 错误猜测法

        错误猜测法是对被测试软件设计的理解,过往经验以及个人直觉,推测出软件可能存在的缺陷,从而针对性地设计测试用例的方法。
        这个方法强调的是对被测试软件的需求理解以及设计实现的细节把握,还有个人的经验和直觉。错误推测法和目前流行的“ 探索式测试方法 ” 的基本思想一致,这类方法在敏捷开发模式下的投入产出比很高,被广泛应运于测试。
        这个方法的缺点是难以系统化,并且过度依赖个人能力。

2.4 场景设计法

        现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。该方法可以比较生动地描绘出事件触发时的情景,有利于测试设计者设计测试用例,是测试用例更容易理解和执行。

2.5 因果图

        因果图是一种简化了的逻辑图,能直观地表明程序输入条件(原因)和输出动作(结果)之间的相互关系。因果图法是借助图形来设计测试用例的一种系统方法,特别适用于被测试程序具有多种输入条件、程序的输出又依赖于输入条件的各种情况。
设计步骤如下:
1、分析所有可能的输入与输出条件
2、找出输入与输出的关系
3、画出因果图(判定表)
4、根据判定表设计测试用例
举个例子:
有个电商活动,订单已提交,订单金额大于300元或者有红包,则算做有优惠
1、分析可能的输入与输出条件
  • 订单已提交
  • 订单金额大于300
  • 有红包

2、确定输入与输出的关系

(1)订单已提交    订单金额大于300        有优惠

(2)订单已提交   有红包       有优惠

(3)订单已提交  订单金额大于300 有红包   有优惠

(4)订单已提交  订单金额不大于300   无红包  无优惠

(5)订单未提交   无优惠

3、画出判定表

4、设计测试用例

1)金额大于300元,没有红包,提交订单,结果为有优惠

2) 金额不大于300元,有红包,提交订单,结果为有优惠

3)金额大于300元,有红包,提交订单,结果为有优惠

4)金额不大于300元,没有红包,提交订单,结果为无优惠

5)金额大于300元,没有红包,不提交订单,结果为无优惠

6)金额不大于300元,有红包,不提交订单,结果为无优惠

7)金额大于300元,有红包,不提交订单,结果为无优惠

8)金额不大于300元,没有红包,不提交订单,结果为无优惠

2.6 正交排列(使用较少)

        正交排列是根据正交性,由试验因素的全部水平组合中挑选出部分有代表性的点进行试验,通过对这部分试验结果的分析了解全面试验的情况,找出最优的水平组合
        当因果图设计的测试用例过多时,此时可以使用正交排列来设计测试用例,正交排列的目的是为了减少用例数目,用尽量少的用例覆盖输入的两两组合。
正交表的构成:
(1)行数 正交表中的行的个数,即试验的次数 , 用 N 代表。 
(2)因素数 正交表中列的个数,用 C 代表。
(3)水平数 任何单个因素能够取得的值的最大个数。正交表中的包含的值为从 0 到数 “ 水平数 -1”                           或从1 到 “ 水平数 ” ,用 T 代表。
正交表的表示形式: L= 行数 ( 水平数 * 因素数 ) L=N(TC)
正交表的性质
  • 每一列中各数字出现的次数都一样多。
  • 任何两列中的各有序数对出现的次数都一样多。

举例:

以登录注册为例

1、找到水平数与因素数

因素数:姓名、邮箱、密码、确认密码、验证码
水平数:填写、不填写
2、使用allpairs工具来生产正交表
在建立一个Excel文件,输入因素数和水平数,复制粘贴到新TXT文件里,把TXT文件放在allpairs文件夹里。

3、运行cmd进入该路径下

4、 打开1122jg.txt文件就可以看到正交表结果了

三、测试方法

测试方法有许多种:功能测试、性能测试、安全测试、黑盒测试和白盒测试等等。以下图包含了众多的测试方法与分类。

在这里重点介绍两种测试方法:黑盒测试白盒测试

黑盒测试

黑盒测试是在完全不考虑程序逻辑和内部结构的情况下,在测试时只需要关注输入、输出和预期结果,检查系统功能是否按照需求规格说明书的规定正常使用、是否能适当的接收输入数据而输出正确的结果,满足规范需求。

黑盒测试优点:1、按照软件需求规格书来设计测试用例,不容易遗漏需求规格书中的功能

2、不需要考虑程序内部的逻辑及代码,不关注软件内部的实现

       3、黑盒测试是覆盖产品功能范围最广的测试方法

黑盒测试的缺点:1、不可能覆盖所有程序代码

黑盒测试使用到的测试方法:等价类,边界值,因果图,场景法,错误猜测法等。

白盒测试

白盒测试需要考虑程序内部的逻辑和代码实现,它一般用来分析程序的内部结构,针对程序的逻辑结构来设计测试用例进行测试。

白盒测试使用到的六种测试方法:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖

白盒测试优点:白盒测试对程序代码的测试是十分详细,完整的

灰盒测试

        灰盒测试,是介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成测试阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况

四、常见的测试用例面试题

1、测试用例是否是越多越好?

测试用例不是越多越好。

测试用例是用来检测软件产品缺陷,是为了提高产品质量和用户体验。但测试也需要一定的时间、精力和成本,有时候设计过多的测试用例反而得不偿失。

如果是面试官让你就某一事物来设计测试用例,这个时候你设计的测试用例越多越好

2、常用的测试方法有哪些?哪种测试方法使用的最多?

常用的测试方法有黑盒测试、白盒测试和灰盒测试。黑盒测试是覆盖产品功能最广的测试方法,白盒测试是测试程序代码最为详细、完整。

关于哪种测试方法使用的最多,这需要在工作中根据实际情况来结合黑盒测试和白盒测试来决定使用哪种测试方法,一般来说,测试人员使用黑盒测试方法会比较多一点

3、设计水杯的测试用例

设计测试用例可以套用万能公式:                                                                                                                                功能测试、界面测试、性能测试、兼容性测试、安全测试和易用测试

【测试开发】掌握测试用例的设计以及什么是黑盒测试?什么是白盒测试?相关推荐

  1. 【测试入门】测试用例经典设计方法 —— 因果图法

    01.因果图设计测试用例的步骤 1.分析需求 阅读需求文档,如果User Case很复杂,尽量将它分解成若干个简单的部分.这样做的好处是,不必在一次处理过程中考虑所有的原因.没有固定的流程说明究竟分解 ...

  2. 【测试基础】测试用例的设计方法

    等价类 等价类划分法将程序所有可能的输入数据(有效的和无效的)划分成若干个等价类.然后从每个部分中选取具有代表性的数据当做测试用例进行合理的分类,测试用例由有效等价类和无效等价类的代表组成,从而保证测 ...

  3. 测试用例的设计-提高测试覆盖率

    前言 说到测试用例的设计,我想每个有过测试经历的测试工程师都会认为很简单,不就是:按需求或概要设计,得到软件功能划分图,然后据此按每个功能,采用等价类划分.临界值.因果图等方法来设计用例就行了. 但事 ...

  4. 测试分析与测试用例设计方法

    一.测试分析方法 1.质量模型分析法 针对每个功能使用软件质量模型进行分析,分析应测特性,确认各功能的测试点以及测试项: 2.功能交互分析法 针对不同的功能确认各功能之间的交互操作,分析各功能交互时的 ...

  5. 面试测试开发工程师:用例篇

    目录 1. 测试用例的基本要素 2. 测试用例的给我们带来的好处 3. 测试用例的设计方法 3.1 测试用例的总体设计方法 基于需求的设计 3.2 具体的设计方法 3.2.2 等价类 3.2.3 边界 ...

  6. 【测试开发】第三节.测试开发——用例篇(如何设计一个测试用例,设计测试用例的一些具体方法)

    作者简介:大家好,我是未央: 博客首页:未央.303 系列专栏:Java测试开发 每日一句:人的一生,可以有所作为的时机只有一次,那就是现在!!! 文章目录 前言 一.测试用例的基本要素 二.设计测试 ...

  7. 测试开发——用例篇(如何设计一个测试用例,设计测试用例的一些具体方法)

    目录 一.测试用例的基本要素 二.设计测试用例的万能公式 (在没有需求文档的情况下) 1.水杯的测试用例 2.一个网站的登录测试用例 三.基于需求进行测试用例的设计 四.测试用例的具体设计方法(根据需 ...

  8. 测试电梯的测试用例_测试开发工作者日记:2020.12.24

    画    最近的工作业务测试比较多,但是作为从最底层测试摸爬滚打出来的博主来说,完全没压力,也没有不爽,相反还觉得这是一次大脑放松的机会. 用非常非常快速的方法进行功能测试,甚至用例都不看也不写. 就 ...

  9. 测试篇(三):测试用例的万能公式、对水杯和登录页面设计测试用例、测试用例的设计方法

    目录 一.测试用例的万能公式 二.对登录页面设计测试用例 三.测试用例的设计方法 3.1 基于需求的设计方法 3.2 等价类 3.3 边界值 3.4 判定表 3.5 正交排列 3.6 场景设计法 3. ...

最新文章

  1. APP测试入门之性能测试
  2. [转载]Memcache内存临界测试
  3. Jerry 2016年5月20日到5月23日的学习笔记
  4. 7k7k游戏盒与逗游游戏库,你更喜欢哪个
  5. Regularization:The problem of overfitting过度拟合问题----吴恩达机器学习
  6. 雅虎助手,thanks
  7. JavaScript学习手册八:JS函数
  8. python 余弦值,Python向量余弦值 Python 求向量的余弦值操作
  9. webrtc---桌面共享原理
  10. 麦克马斯特计算机工程专业,麦克马斯特大学计算机专业成功录取
  11. Spark面试题修改版本
  12. Integrated Electrical Test Vehicle Co-designed with Microfluidics for Evaluating the Performance of
  13. 微信摇一摇周边--获取access_token
  14. Json和其序列化和反序列化
  15. 橙仕X2双排mini卡已经开始接受订单
  16. javascript实现div层移动的减速效果
  17. 最好用的PS一键智能抠图插件,3秒就能扣好一张图
  18. 灰度差分统计法计算图像的对比度
  19. 开源正弦波20kHz信号发生器 V2
  20. 高质量的外链是这样做出来的

热门文章

  1. 关于App自动化执行链接Appium服务包名正确但是报错An unknown server-side error occurred while processing the command
  2. Emacs 选择文字
  3. 51单片机课程设计 || 基于AS608模块的指纹锁
  4. 计算机毕业设计JAVA企业人事管理系统mybatis+源码+调试部署+系统+数据库+lw
  5. 喜茶小程序服务器,融资5亿美元 喜茶为何仍搞不定一杯黄皮?
  6. (附源码)计算机毕业设计SSM基于的装修公司运营管理管理系统
  7. 十三四岁的学生不想上学怎么办
  8. java math四舍五入类,Java中Math类的几个四舍五入方法的区别
  9. 使用plsql创建的用户,以普通身份无法登录进去,提示ORA-01017: 用户名/口令无效; 登录被拒绝
  10. nginx 10054报错问题解决方案