• 测试用例


    • 测试用例
      • 概念:为特定的目的而设计的一组测试输入、执行条件和预期的结果,以便测试是否满足某个特定需求。通过大量的测试用例来检验软件的运行效果,它是指导测试工作进行的依据(测什么、怎么测)
    • 测试用例常用方法
      • 等价类划分
        • 常用的黑盒测试方法,不需要考虑程序的内部结构,只需要考虑程序的输入规格
        • 将不能穷举的测试过程进行合理的分类,从而保证设计出来的测试用例具有完整性和代表性
        • 等价类的分类
          • 有效等价类:指符合《需求规格说明书》,输入合理的数据集合
          • 无效等价类:指不符合《需求规格说明书》,输入不合理的数据集合
        • 思考步骤
          • 1.先确定有效和无效等价类
          • 2.有效等价类就是题目条件(两端的极值(边界值)要判断、中间随意一个值也要判断)
          • 3.无效等价类先划分与条件相反的情况,再找到特殊情况(中文、英文、特殊符号、空格、空)
        •  总结
          • 输入长度
          • 输入类型
          • 组成规则
          • 是否为空
          • 是否区分大小写
          • 是否重复
          • 是否去除空格
      • 边界值
        • 边界:指对于输入等价类和输出等价类而言,稍高于其边界值及稍低于边界值的一些特定情况
        • 常用的黑盒测试方法
        • 思考步骤
          • 找到测试数据的边界点,也就是有效等价类和无效等价类的边界点,对边界点数据专门进行测试
          • 一般情况下,需要对边界值以及边界值两边的数分别进行测试
        • 总结
          • 边界值思想是选边界值和刚超出的值来进行测试,同时也要根据实际情况来看
          • 边界值和等价类是配合使用的:等价类将所有可能输入的情况分为有效等价类和无效等价类,又根据输入数据类型再分,而边界值方法,是从某个等价类中挑几个具有代表性的数据作为测试数据
      • 因果图
        • 因:输入条件
        • 果:输出结果
        • 适用于输入条件之间有相互制约、相互依赖的情况

        • 基本符号
          • 恒等:C1出现,E1必定出现
          • 非:C1出现,E1肯定不出现
          • 或:C!  C2 中任意出现一个就会有E1
          • 与:C1 与 C2 都出现才会有E1 
        • 基本步骤
          • 找出所有的因,因就是输入条件或输入条件的等价类
          • 找出所有的果,果就是输出条件
          • 明确所有输入条件之间的制约关系以及组合关系(即哪些可以组合到一起)
          • 明确所有输出条件之间的制约关系以及组合关系(即哪些可以组合到一起)
          • 每种因的组合对应哪种果的组合
          • 把因果图判定成判定表(因果图只是一个过程,判定表才是真正的输入)
          • 为判定表中的每一列表示的情况设计测试用例 
      • 判定表
        • 组成部分
          • 条件桩:所有条件
          • 动作桩:所有结果
          • 条件项:针对条件桩的组合取值
          • 动作项:针对动作桩的组合取值
        • 基本步骤
          • 列出所有的条件桩和动作桩
          • 组合条件桩、动作桩形成条件项、动作项  
          • 简化判定表(合并相似规则(相同动作))
      • 场景法
        • 模拟用户操作软件时的场景,主要用于测试系统的业务流程
        • 当拿到一个测试任务时,我们并不是先关注某个控件的边界值、等价类是否满足要求,而是先要关注它的主要功能和业务流程图是否正确实现,这就需要使用场景法赖完成测试
        • 当业务流程测试没有问题,也就是该软件的主要功能没有问题时,我们再重点商量从边界值、等价类等方面对控件进行测试
        • 主要应用于冒烟测试
        • 两个概念
          • 基本流:按照正确的业务流程来实现的一条操作路径(模拟正确的操作流程)
          • 备选流:导致程序出现错误的操作步骤(模拟错误的操作流程)
        • 用例场景是用来描述流经用例路径的过程,这个过程从开始到结束遍历用例中的所有基本流和备选流
        • 在使用场景法设计测试用例时,需要覆盖系统用例中的主成功场景和扩展场景,并且需要适当补充各种正反面的测试用例和考虑出异常场景的情形
        • 当使用场景法测试程序没有问题时,可以再使用边界值、等价类方法对账号、密码进行更加细致、完整的测试
      • 流程分析法
        • 适用于有先后顺序的测试
        • 常用于业务流程、安装流程
        • 每个流程就是一条测试用例,它只是在测试整体流程是否正确,细节还是需要等价类、边界值等方法进行完善
      • 错误推断法
        • 凭借直觉和经验来设计测试用例,它是根据之前项目相关的bug数据总结来的
      • 正交表
        • 从全面试验中挑选出有代表性的点进行测试(均匀分数、整齐可比),高效率、快速、经济的方法
        • 基本步骤
          • 根据所测程序中控件的个数(因素)以及每个控件的取值个数(水平),选取一个合适的正交排列表(如4个控件,每个控件3种情况,就是3^4,写做:L9(3^4)
          • 把控件及其取值列举出来,并对其进行编号
          • 把控件及其取值映射到正交排列表中
          • 根据映射好的正交排列表编写测试用例
        • 局限性
          • 常用的正交表只有几种,而且要求是每个控件的选择情况都相等,这在现实中是很难存在的
          • 如果没有现成的正交表时,就可以使用混合正交表
      • 混合正交表
        • 使用步骤
          • 制作取值表(只列出取值,不用编号)
          • 复制取值表中的数据,放到文本文档(test.txt)文件中保存,注意不要更改任何格式
          • 把文本文档放在allpairs(正交表的生成工具)文件夹中
          • 打开cmd控制台
          • 进入allpairs文件夹
          • 在控制台中输入allpairs.exe test.txt>test1.txt           (test1.txt是自己起的名字,用来存放生成的用例,可以自动生成,不用提前建好)
    • 几种常用测试方法选择
      • 拿到一个测试任务的时候,先关注它的主要功能与业务流程、业务逻辑是否正确实现,故用场景法
      • 需要输入数据的地方,考虑等价类划分法,包括输入条件与输出条件的等价划分,将无限测试变成有限测试
      • 在任何情况下都必须采用边界值分析法。这种方法设计出的测试用例发现程序错误能力最强
      • 如果程序的功能说明中含有输入条件的组合情况,则一开始就应考虑用因果图和判定表
      • 对于参数配置类的软件,需要考虑参数之间的组合情况,考虑使用正交排序法选择较少的组合方式(最少的测试用例获得最大的测试覆盖率)
      • 对照程序逻辑,检测已设计出的测试用例的逻辑覆盖程度。如果没有达到要求的覆盖标准,则应补充更多的测试用例
      • 采用错误推断法再追加测试用例——依靠测试人员的经验与智慧
  • 相关阅读:
    JavaBean递归拷贝工具类Dozer
    SpringMVC自定义视图Excel视图和PDF视图
    CentOS7使用firewalld打开关闭防火墙与端口[转]
    区分JS中的undefined,null,"",0和false
    环比同比
    JavaScript 浮点数陷阱及解法
    一致性哈希算法(Consistent Hash)的黑科技
    Lua与C交互简明教程
    Twitter-Snowflake,64位自增ID算法详解
    Hystrix使用入门手册(中文)
  • 原文地址:https://www.cnblogs.com/SakuraYuanYuan/p/11111303.html
Copyright © 2020-2023  润新知