• 软件测试:用例篇


    软件测试:用例篇

    本节主要内容 

    测试用例的基本要素

    测试用例(Test Case)是为了实施测试而向被测试的系统提供的一组集合,这组集合包括:测试环境、操作步骤、测试数据、预期结果等要素。

    评价测试用例好坏的标准: 

    测试用例的优点 

    测试用例的缺点 

    测试用例具体的设计方法

    设计方法有5种:基于需求的设计、等价类、边界值、因果图、正交排列、场景设计法、错误猜测法。

    基于需求的设计

    RBT是基于需求的测试方法,会使测试更加有效,因为它使测试专注于质量问题产生的根源,即需求。

    基于需求的测试是一种最根本的软件测试,主要关注以下两个问题: 

    案例: 640?wx_fmt=png

    等价类

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

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

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

      案例: 

    边界值

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

    案例一:
    1.[1,50]:0,1,50,51
    2.(1,50):1,2,49,50
    3.(1,50]:1,2,50,514.[1,50):0,1,49,50
    
    • 1

    • 2

    • 3

    • 4

    在实际的测试设计中,会将等价类和边界值结合起来使用。

    案例二:
    以注册邮箱的软件需求为例子
    用户名要求长度为6-15位
    边界值上点为:5,6,15,16 全了吗?
    答案是:NO,最终我们确认的用例设计为:5,6,10,15,16
    
    • 1

    • 2

    • 3

    • 4

    • 5

    因果图

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

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

    - 与 640?wx_fmt=png

    只有2个原因都为真,那么结果才为真。
    
    • 1

    - 或 640?wx_fmt=png

    2个原因中有一个为真时,结果就为真。
    
    • 1

    - 非 640?wx_fmt=png

    只有原因为假,结果才为真。
    
    • 1

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

    1. 分析所有可能的输入和可能的输出;

    2. 找出输出与输入之间的对应关系;

    3. 画出因果图;

    4. 把因果图转换成判定表;

    5. 把判定表对应到每一个测试用例。

      案例三: 

    因果图: 640?wx_fmt=png 640?wx_fmt=png

    因果法测试用例可以帮助测试人员理清输入和输出的关系,但是对于比较复杂的输入和输出,会耗费大量的时间。所以引出了下面的正交法。

    正交排列

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

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

    正交法中的重要概念: 因素:在一项试验中,凡欲考察的变量称为因素(变量)。 水平:变量的取值。

    正交表的构成: 行数:正交表中的行的个数,即试验的次数,用N代表。 因素数:正交表中列的个数,用C代表。 水平数:任何单个因素能够取到的值的最大个数。正交表中的包含的值为从0到数”水平数-1“或1到” 水平数“,用T代替。

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

    L=N(TC)

    正交表的两条性质: 

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

    案例四:
    以注册邮箱为例:
        1. 因素(变量):姓名、邮箱、密码、确认密码、验证码
        2. 水平(变量取值):yes(填写)、no(不填写)
        3. 表中的因素数(C) >= 5;表中的每个因素数的水平数(T) >= 2;行数取最少的一个,即试验次数最少的一个。 即 :L=N(TC)=5*(2-1)+1=6  
    选择正交表,这里选择了L6_2_5。  
        4. 生成测试用例:注意要满足正交的两条性质,表格如下:
        5. 增补测试用例:
            只填姓名和验证码,不填email、密码和确认密码。
    
    • 1

    • 2

    • 3

    • 4

    • 5

    • 6

    • 7

    • 8

    • 9

    正交表: 640?wx_fmt=png

    作业:用什么方法来设计以下两个作业,5个条件都是可填和可不填的。

    查询页面:姓名、性别、学号、学校、班级

        正交法设计:
        - 因素(变量):姓名、性别、学号、学校、班级
        - 水平(变量取值):填写、不填写
        - 表中的因素数(C)>=5;水平数(T)>=2;行数取最少的一个。即:L=N(TC)=5*(2-1)+1=6。选择正交表,L6_2_5。
        - 生成测试用例:表格如下正交表1所示:    
        - 增补测试用例:
            只填姓名和班级,不填性别、学号和学校。                     
    
    • 1

    • 2

    • 3

    • 4

    • 5

    • 6

    • 7

    正交表1: 640?wx_fmt=png

    场景设计法

    事件流 

    控制流 

    场景设计法可以比较生动地描绘出事件触发时的情景,有利于测试设计者设计测试用例,是测试 

    错误猜测法

    错误猜测法是经验丰富的测试人员喜欢使用的一种测试方法。

    基于经验和直觉,找出程序中你认为可能出现的错误,有针对性地设计测试用例。 

    以注册邮箱为例: 

    测试用例的有效性

    1. 苹果7手机微信添加了mobile单车小程序,扫码不能开锁,只能使用mobile APP开锁,测试用例未涉及到苹果7微信小程序扫码开锁。此时该测试用例就是无效的。

    2. 苹果7手机微信添加了mobile单车小程序,用例已写到了苹果7微信添加mobile小程序扫码开锁,问题被发现。此时该测试用例就是有效的。

    3. 已知某代码此处无bug,用某条测试用例来测试也没有出现bug,则这条测试用例也是有效的。

    测试用例的粒度和评价

    测试用例的粒度

    粒度:指测试用例编写的详细程度 

    主要考虑可参考以下内容: 

    测试用例的评价

    主要有: 

    本文转自:https://blog.csdn.net/bit666888/article/details/81078499

  • 相关阅读:
    spring详解(五)——事物管理
    spring详解(四)——JDBC
    spring详解(三)——AOP
    Spring详解(二)
    Spring详解(一)
    springMVC(九)——restful风格和异常处理
    Linux 文件权限
    如何使用Git从GitHub上下载项目
    Spring(1)
    SpringMvc(4)
  • 原文地址:https://www.cnblogs.com/finer/p/11895070.html
Copyright © 2020-2023  润新知