热门标签 | HotTags
当前位置:  开发笔记 > 程序员 > 正文

测试用例设计格式及常用的方法

测试用例格式用例编号:​A-B-C-D​A:产品或项目名称,B:用户属性STITUT,C:

测试用例格式

用例编号:

​ A-B-C-D

​ A:产品或项目名称,B:用户属性 ST IT UT ,C:客户管理(C1新增客户)

​ D:编号

​ CRM-ST-客户管理-新增客户-001

测试项:

​ 客户管理-新增客户

测试标题:

​ 新增名称为空的客户信息

​ 新增名称超过20个汉字的客户信息

​ 新增名称包含单引号的客户信息

用例属性

​ 功能性测试,性能测试,兼容性测试,安全性测试

重要级别

​ 高:实现主体功能的用例

​ 中:主项流程进过备选流处理或者经过异常处理能够正确实现

​ 低:GUI,易用性表述,文字描述类

预置条件

测试输入

操作步骤

预期结果

实际输出


用例设计方法


等价类

​ **定义:**具有相同属性或方法的事物集合;这个集合中某个个体所表现的特征与其他个性完全一致;对于某个被测对象的测试输入而言,某个个体能够被接受或被拒绝,则该个个体中的任意个体都应该被接受或拒绝

​ **等价类划分:**有效等价类(针对被测对象而言,合理的,有意义的,系统接受的输入);无效等价类(针对被测对象而言,不合理,无意义的,系统不能接受的输入)

等价类划分规则:


  • 如果需求规定了输入域的取值个数或确定了某个范围时,则可确定一个有效等价类及两个无效等价类
  • 如果需求规定了某个输入域的集合,或者必须如何的情况下,可确定一个有效等价类和一个无效等价类
  • 如果需求规定了某个输入域是真假值时,可确定一个有效等价类和一个无效等价类
  • 如果用户需求规定了输入域是一组值,则可确定若干个有效等价类及一个无效等价类
  • 用户需求规定必须遵守某种规则时,可确定一个有效等价类及若干个从不同角度违反规则的无效等价类

进行用例设计


  • 根据需求,划分有效及无效等价类,有效等价类统一编号,无效等价类同一编号
  • 设计一个新的测试用例,使其尽可能覆盖所有有效等价类,指导所有有效等价类都被覆盖
  • 设计一个新的测试用例,使其尽可能覆盖一个无效等价类,直到所有无效等价类都被覆盖

等价类四则运算


  • 加: 不考虑需求其他子项,细致分解当前测试点击详细需求,做累加
  • 减:根据业务规则减少,排除相关不肯出现的规则,检索不可能出现的组合
  • 乘:如果有效等价类中具有互斥条件的需求时,可进行相乘得到用例个数
  • 除:排除所具有的重复特性的等价类,尽可能做到有效等价类之间交集为空,无效等价类之间交集也为空,有效及无效等价类的并集为整个输入域

以某个注册为例:等价类图标在这里插入图片描述

然后根据图编写测试用例


边界值

一种特殊的等价类

​ 边界值三点:


  • 上点: 边界上的点
  • 离点: 离上点最近的点(根据上点的精度确定)
  • 内点: 边界有效范围内的任意一点

如何确定离点: 边界时闭区间,离点在外;边界时开区间,则离点在内

应用场景:


  • 如果需求规定了取值范围或规定了取值个数时,可领该范围的边界内及边界附近的数据进行测试
  • 如果需求规定了取值个数,则少于个数一个,或者多余个数一个的值进行测试
  • 如果需求规定了一个有序集合的时候,可使用该集合的第一个和最后一个值进行测试
  • 如果程序中使用一个内部数据结构的话,则应该从该数据结构的边界进行考虑

判定表

​ (一般用在各种判定的条件,主要考虑条件和动作之间的关系)

​ 定义: 分析和表述若干输入条件下,被测对象针对这些输入做出的响应的一种工具,在遇到复杂业务逻辑时,可以利用该表沥青业务逻辑关系

​ 概念:


  • 条件 条件桩(需求规格说明书定义的被测大小的所有输入) 条件项(针对条件桩所有可能的输入数据的真假值)
  • 动作 动作桩(针对条件被测对象可能采取的所有操作) 动作项(针对动作桩,被测对象响应的可能取值)
  • 规范 动作项和条件桩组合在一起,形成的业务逻辑处理规范

应用步骤:


  • 理解需求,确定条件桩、动作桩
  • 设计及优化判定表
  • 填写动作项
  • 根据判定表中输出结果的表现,进行判定表的合并(非必须)也称简化判定表
  • 抽取测试用例

判定表例子在这里插入图片描述


因果图

当输入输出关系逻辑比较复杂时

输入与输入关系


  • 异: 所有输入条件中最多一个产生,也可以一个都没有
  • 或: 所有输入条件中,最少一个产生,或者多个,或所有
  • 唯一: 所有输入条件中,有且只有一个条件产生
  • 要求: 所有输入条件中,只要有一个产生,其他跟着也会出现

输入与输出关系


  • 恒等:当输入条件发生时,结果一定发生;当输入条件不发生时,结果一定不会出现
  • 非: 当输入条件发生时,结果一定不会出现;当输入条件不发生时,结果一定会出现
  • 与: 当多个输入条件中,只有所有输入条件都发生,结果才出现
  • 或: 当多个输入条件中,只要有一个发生,结果就会出现

正交实验

多条件查询情况下,多输入条件情况下,用判定表很复杂

一般用于查询测试,兼容性测试等

因子: 所有参与实验的影响实验结果的条件称为因子。

水平: 影响实验因子的取值或输入称为水平。

​ **整齐可比:**在同一张正交表中,每个因子的每个水平出现的次数完全相同,实验中,每个因子的每个水平与其他因子的水平参与实验的机率完全相同

​ **均匀分配:**同一张正交表中,人员两列的水平搭配是完全相同的

设计流程:


  • 分析需求获取因子及水平

  • 根据因子水平选择合适的正交表

  • 替换因子水平,获取实验次数

  • 根据经验或其他因素补充实验次数

  • 细化输出获取测试用例
    在这里插入图片描述
    在这里插入图片描述
    注意:

  • 选择正交表时,因子与水平恰好与正交表相同

  • 被测对象因子与正交表中的因子数不同,选择正交表中因子稍大于被测对象因子数,且实验次数最少

  • 被测对象水平与正交表中的水平不同,可根据实际情况进行合并,然后拆分

  • 因子水平都不相同,则可选择因子,水平稍大于被测对象的,且实验次数最少的


状态迁移

​ 关注被测对象的状态变化,在需求规格书中是否有不可到达的状态和非法的状态,是否产生非法的状态迁移

​ 状态:被测对象在特定输入条件下锁保存的响应形式

方法流程:


  • 根据需求明确状态节点
  • 绘制状态迁移图
  • 绘制状态迁移树
  • 抽取测试用例
    在这里插入图片描述在这里插入图片描述在这里插入图片描述

流程分析

​ 基本流:通过实现业务流程输入都为正确的,能够最后达到目标的流程

​ 备选流:通过实现业务流程时,因错误操作或异常输入,导致流程存在反复,但最终能够完成期望的业务

​ 异常流:通过实现业务流程是,因错误操作或异常输入,倒置业务没有正确完成
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

使用方法:


  • 理解需求,确定业务流程
  • 绘制流程图
  • 根据流程图,抽取测试路劲(每次路劲需包含一个从未走过的路径)
  • 细化路径设计测试用例

注意点:

​ 需使用等价类,边界值,正交实验,判定表,因果图等方法保证单个功能的正确性


推荐阅读
  • 本文比较了eBPF和WebAssembly作为云原生VM的特点和应用领域。eBPF作为运行在Linux内核中的轻量级代码执行沙箱,适用于网络或安全相关的任务;而WebAssembly作为图灵完备的语言,在商业应用中具有优势。同时,介绍了WebAssembly在Linux内核中运行的尝试以及基于LLVM的云原生WebAssembly编译器WasmEdge Runtime的案例,展示了WebAssembly作为原生应用程序的潜力。 ... [详细]
  • 本文讨论了B360主板是否可以安装win7系统的问题。由于B360主板不支持win7系统且缺乏官方驱动的支持,安装win7系统可能存在兼容性和稳定性问题。然而,通过借助USB3.0转接卡,B360主板仍然可以安装win7系统,但USB接口无法使用。相比之下,B365主板可以直接支持win7系统,并提供了相应的驱动,具有更好的稳定性和兼容性。选择合适的主板对于安装win7系统至关重要。 ... [详细]
  • 本文介绍了adg架构设置在企业数据治理中的应用。随着信息技术的发展,企业IT系统的快速发展使得数据成为企业业务增长的新动力,但同时也带来了数据冗余、数据难发现、效率低下、资源消耗等问题。本文讨论了企业面临的几类尖锐问题,并提出了解决方案,包括确保库表结构与系统测试版本一致、避免数据冗余、快速定位问题等。此外,本文还探讨了adg架构在大版本升级、上云服务和微服务治理方面的应用。通过本文的介绍,读者可以了解到adg架构设置的重要性及其在企业数据治理中的应用。 ... [详细]
  • 禁止程序接收鼠标事件的工具_VNC Viewer for Mac(远程桌面工具)免费版
    VNCViewerforMac是一款运行在Mac平台上的远程桌面工具,vncviewermac版可以帮助您使用Mac的键盘和鼠标来控制远程计算机,操作简 ... [详细]
  • 本文详细介绍了云服务器API接口的概念和作用,以及如何使用API接口管理云上资源和开发应用程序。通过创建实例API、调整实例配置API、关闭实例API和退还实例API等功能,可以实现云服务器的创建、配置修改和销毁等操作。对于想要学习云服务器API接口的人来说,本文提供了详细的入门指南和使用方法。如果想进一步了解相关知识或阅读更多相关文章,请关注编程笔记行业资讯频道。 ... [详细]
  • 生成对抗式网络GAN及其衍生CGAN、DCGAN、WGAN、LSGAN、BEGAN介绍
    一、GAN原理介绍学习GAN的第一篇论文当然由是IanGoodfellow于2014年发表的GenerativeAdversarialNetworks(论文下载链接arxiv:[h ... [详细]
  • 信息安全等级保护是指对国家秘密信息、法人和其他组织及公民的专有信息以及公开信息和存储、传输、处理这些信息的信息系统分等级实行安全保护,对信息系统中使用的信息安全产品实 ... [详细]
  • 无线认证设置故障排除方法及注意事项
    本文介绍了解决无线认证设置故障的方法和注意事项,包括检查无线路由器工作状态、关闭手机休眠状态下的网络设置、重启路由器、更改认证类型、恢复出厂设置和手机网络设置等。通过这些方法,可以解决无线认证设置可能出现的问题,确保无线网络正常连接和上网。同时,还提供了一些注意事项,以便用户在进行无线认证设置时能够正确操作。 ... [详细]
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • 本文详细介绍了相机防抖的设置方法和使用技巧,包括索尼防抖设置、VR和Stabilizer档位的选择、机身菜单设置等。同时解释了相机防抖的原理,包括电子防抖和光学防抖的区别,以及它们对画质细节的影响。此外,还提到了一些运动相机的防抖方法,如大疆的Osmo Action的Rock Steady技术。通过本文,你将更好地理解相机防抖的重要性和使用技巧,提高拍摄体验。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文详细介绍了华为4GLTE路由器B310的外置天线安装和设置方法。通过连接电源和网线,输入路由器的IP并登陆设置页面,选择手动设置和手动因特网设置,输入ISP提供商的用户名和密码,并设置MTU值。同时,还介绍了无线加密的设置方法。最后,将外网线连在路由器的WAN口即可使用。 ... [详细]
  • 本文讨论了前端工程化的准备工作,主要包括性能优化、安全防护和监控等方面需要注意的事项。通过系统的答案,帮助前端开发者更好地进行工程化的准备工作,提升网站的性能、安全性和监控能力。 ... [详细]
  • Java String与StringBuffer的区别及其应用场景
    本文主要介绍了Java中String和StringBuffer的区别,String是不可变的,而StringBuffer是可变的。StringBuffer在进行字符串处理时不生成新的对象,内存使用上要优于String类。因此,在需要频繁对字符串进行修改的情况下,使用StringBuffer更加适合。同时,文章还介绍了String和StringBuffer的应用场景。 ... [详细]
  • MyBatis错题分析解析及注意事项
    本文对MyBatis的错题进行了分析和解析,同时介绍了使用MyBatis时需要注意的一些事项,如resultMap的使用、SqlSession和SqlSessionFactory的获取方式、动态SQL中的else元素和when元素的使用、resource属性和url属性的配置方式、typeAliases的使用方法等。同时还指出了在属性名与查询字段名不一致时需要使用resultMap进行结果映射,而不能使用resultType。 ... [详细]
author-avatar
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有