软件测试 -- 入门 6 软件测试设计方法

Posted Rolei_zl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件测试 -- 入门 6 软件测试设计方法相关的知识,希望对你有一定的参考价值。

    读书要从薄到厚,再从厚到薄。-- 华罗庚

    软件测试设计方法,即软件测试执行时的 取数原则 和 执行逻辑,通过需求分析、过程分解,完成对被测对象的验证和确认。
    一般会将此类测试设计方法归为黑盒测试范畴,实际应用中,此类方法同样适用于白盒测试。

    软件测试的目标是提升质量,直接目的是尽可能早的发现错误。
    通过软件测试方法(软件测试 -- 入门 5 软件测试方式_Rolei_zl的博客-CSDN博客)可以从整体上了解测试实现的方式,如何从方法转化为实际可执行的操作,则需要具体的实现细节指导。
    通过一系列软件测试方法,设计、定义具体的测试执行方式:场景、目标、环境、数据、步骤、标准,即通过测试用例设计指导测试的具体执行。

  • 常用软件测试设计方法
方法对象说明
边界值 基于输入(或由输入所影响的输出)分析构成的的允许输入和禁止输入针对循环语句的结束条件 和 判断语句的分支路径条件,关注:边界点、边界内、边界外
等价类输入无穷尽,通过一类数据中选择的1个或几个点验证某类数据输入对系统的影响满足预期,关注:有效等价类、无效等价类
因果图基于系统数据运转流程,对流程中的各个环节进行分析、设计

与、或、非,语句中各条件组合导出不同的结果,白盒测试中的条件覆盖

参考:《The Art of Software Testing . 软件测试的艺术》Glenford J.Myers 著

判定表语句中的条件组合 + 各种组合下的结果输出,白盒测试中的组合覆盖,可以由因果图方法生成
状态迁移系统代码的每条路径的执行生成不同的结果、表现不同状态,白盒测试中的判定覆盖
场景法基于实际业务操作汇总可能的系统操作进行验证,白盒测试中的判定覆盖 + 黑盒业务流程测试
错误推测基于业务和测试经验推测系统可能存在问题,设计有针对性的验证用例,探索性测试
正交试验测试覆盖优化,用更少的执行覆盖更为全面的系统验证

多条件组合作用结果验证优化,将验证点较平均的分布于不同的验证层面,确认各条件对最终结果的影响度
如有N种条件,每个条件有M种可能的先择(粒度),则最多会有 M*M*…*M =    种试验点,正交试验正是从全试验点中挑选足够多的试验点验证系统实现的正确性。

参考:正交试验_百度百科          

说明:
    * 所有软件测试设计基准及验证原则来自需求描述,需求细节由需求提供者、需求开发者、设计者、开发者、测试者及相关干系人共同确认完成
    * 边界值、等价类是最常用也是最为有用的单体测试设计方法,测试人员必须熟练掌握;
    * 因果图、判定表、状态迁移图更多的应用于多条件、复杂判断逻辑、多分支的系统业务验证中;
    * 场影法、错误推测法则是更多的依靠测试(系统验证)人员对系统所涉及业务的熟悉度,以及对开发规范、业务重点难点的敏感度。
    * 因果图符号说明

    - Identity,恒等
      原因与结果一致呈现,原因成立则结果成立/出现。原因为1/真,结果为1/真;原因为0/假,结果为0/假。

    - NOT,非 ~
       原因与结果对立呈现,原因成立则结果不成立/出现。原因为1/真,结果为0/假;原因为0/假,结果为1/假。

    - OR,或  ∨
       多个原因基中任一个满足条件,则结果成立/出现。

    - AND,与  ∧
       多个原因同时满足条件,结果才成立/出现。

    - Exclude
      如果结果成立(1/真),则条件中最多有一个成立(1/真);但所有条件可以全部不成立(0/假)。

    - Include
      如果结果成立(1/真),则条件中至少有一个成立(1/真)。

    - Only
       结果始终成立(1/真),条件中有且仅有一件条件成立(1/真),其他条件皆为假(0/假)。

    - Required
      条件a成立(1/真)时,条件b必须也成立(1/真);但条件a不成立(0/假)时,条件b选择不受限制(1/真、0/假均可)。

    - Mask
      条件a不成立(0/假)时,条件b必须也不成立(0/假);但条件a成立(1/真)时,条件b选择不受限制(1/真、0/假均可)。

  • 软件测试设计方法实例(单体设计说明,仅针对日期选择对话框)

方法测试设计
边界值 > 单体日期取值
    - 1977
    - 2099
> 日期组合(开始日期 2-1,结束日期 2-2)
    - 结束日期 >= 开始日期
    - 结束日期 - 开始日期 <= 3 个月
等价类> 单体日期取值
   - 小于1977
   - 等于1977
   - 大于1977 ~ 小于2099
   - 等于2099
   - 大于2099
> 日期组合
   - 结束日期 < 开始日期
   - 结束日期 = 开始日期
   - 结束日期 > 开始日期
   - 结束日期 - 开始日期 > 3 个月
   - 结束日期 - 开始日期 = 3 个月
   - 结束日期 - 开始日期 < 3 个月

以上是关于软件测试 -- 入门 6 软件测试设计方法的主要内容,如果未能解决你的问题,请参考以下文章

软件测试之用例设计,入门必备

软件测试之用例设计,入门必备!

软件测试之用例设计,入门必备

黑盒测试方法

测试用例设计白皮书--因果图方法

测试用例设计方法