通过因果图法来写测试用例的步骤_通过因果图写测试用例的步骤

通过因果图法来写测试用例的步骤_通过因果图写测试用例的步骤一、应用场合在一个界面中,有多个控件,测试的时候要考虑控件的组合关系,不同的控件组合会产生不同的输出结果的组合,为了弄清什么样的输入组合会产生什么样的输出组合,使用因果图法。二、因果图核心1、因——原因,输入条件2、果——结果,输出结果使用图形的方式,分析软件输入和输出的对应关系三、图形符号1、基本图形表示输入和输出的对应关系(1)恒等(=)…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

 

一、应用场合

在一个界面中,有多个控件,测试的时候要考虑控件的组合关系,不同的控件组合会产生不同的输出结果的组合,为了弄清什么样的输入组合会产生什么样的输出组合,使用因果图法。

 

二、因果图核心

1、因——原因,输入条件

2、果——结果,输出结果

使用图形的方式,分析软件输入和输出的对应关系

 

三、图形符号

1、基本图形

表示输入和输出的对应关系

(1)恒等(=)

        若a=1,则b=1

        若a=0,则b=0

(2)非(~)

       若a=1,则b=0

       若a=0,则b=1

(3)或(V)

      若a=1,b=1,或c=1,则d=1

      若a=b=c=0,则d=0

(4)(与)(^)

      若a=b=c=1,则d=1

      若则a=0,b=0,或c=0,则d=0

 

2.约束(限制条件)图形要不然单独限制输入,要不然单独限制输出

说明:唯一的情况是有一个默认值;而互斥没有默认值

(1)互斥(E)

a,b,c不同事为1,即a,b,c中至多只有一个1(例如:单选投票按钮)

(2)包含(I)

a,b,c中至少有一个1,即a,b,c中不能同时为(有个默认选择,其他自己选)

(3)唯一(O)

(4)要求(R)

若a=1,则b必须为1.即不可能a=1且b=0(例如:要自动登录必须记住密码)

(5)屏蔽(M)

r若a=1,则b必须为0;而当a=0时,则b的值不定

 

四、使用因果图分析程序

例题:

通过因果图法来写测试用例的步骤_通过因果图写测试用例的步骤

分析步骤如下:

1.找出所有的原因(输入),编号

(1)投币50元

(2)投币100元

(3)充值50元

(4)充值100元

2.找出所有的结果(输出),编号

A.充值成功并退卡

B.提示充值成功 

C.找零

D.提示错误

步骤1,2就是初步分析需求

3.在步骤1的基础上,找到输入的限制关系和组合关系

(1)限制关系(哪些输入不能组合)

1.输入(1)和(2)不能(互斥)

2.输入(3)和(4)不能(互斥)

画出限制关系因果图

(2)组合关系(决定测试用例的数量)

1.输入(1)和(3)组合

2.输入(1)和(4)组合

3.输入(2)和(3)组合

4.输入(2)和(4)组合

5.输入(1)单独组合

6.输入(2)单独组合

7.输入(3)单独组合

8.输入(4)单独组合

4.在步骤2的基础上,找到输出的限制关系和组合关系

(1)限制关系

1.输出A和D不能(互斥)

2.输出B和D不能(互斥)

画出限制关系因果图

(2)组合关系

1.输出A和B必须组合

2.输出A,B,C组合

3.输出C和D组合

4.输出D单独组合

步骤3、4是深入分析需求的过程

5.找到输入组合和输出组合的对应关系(什么样的输入组合会产生什么样的输出组合)——依据步骤3(2)和4(2)

情况1:

输入(1)和(3)组合

会产生:

           输出A和B的组合

画出因果图

============================

情况2

输入(1)和(4)组合

会产生:

           输出C和D组合

==================

情况3

输入(2)和(3)组合

会产生:

           输出A,B,C组合

========================

情况4

输入(2)和(4)组合

会产生:

           输出A和B组合

=====================

情况5

输入(1)单独组合

会产生:

            输出C和D组合

=======================

情况6

输入(2)单独组合

会产生:

           输出C和D组合

==================

情况7

输入(3)单独组合

会产生:

            输出D

==================

情况8

输入(4)单独组合

会产生:

            输出D

==================

 

6.根据因果图,画出判定表

7.根据判定表编写用例把判定表的一列转换成一条用例

 

五、因果图法的局限性

每个控件的条件(或取值)最好为2个或3个,比如:按钮按下或不按下,复选框选择还是不选择,单选按钮选还是不选,有3个选项的下拉列表

 

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170418.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pytest的使用_java中方法的调用

    pytest的使用_java中方法的调用Pytest执行用例规则Pytest在命令行中支持多种方式来运行和选择测试用例1.对某个目录下所有的用例pytest2.对模块中进行测试pytesttest_mod.py3.对文件夹进行

    2022年7月29日
    9
  • 数据库分区、分表、分库、分片[通俗易懂]

    数据库分区、分表、分库、分片[通俗易懂]一、分区的概念        数据分区是一种物理数据库的设计技术,它的目的是为了在特定的SQL操作中减少数据读写的总量以缩减响应时间。        分区并不是生成新的数据表,而是将表的数据均衡分摊到不同的硬盘,系统或是不同服务器存储介子中,实际上还是一张表。另外,分区可以做到将表的数据均衡到不同的地方,提高数据检索的效率,降低数据库的频繁IO压力值,分区的优点如下:1、相对于单个文件系统或是硬盘…

    2022年5月3日
    45
  • XMLHTTP使用具体解释

    XMLHTTP使用具体解释

    2021年12月6日
    35
  • 如果要学习web前端开发,需要学习什么?

    如果要学习web前端开发,需要学习什么?遇到很多新手,都会问,如果要学习web前端开发,需要学习什么?难不难?多久能入门?怎么能快速建一个网站?工资能拿到多少?还有些让我推荐一些培训机构什么的要去学习。我建议是自学,实在是觉得自己没有这个能

    2022年8月6日
    4
  • sscanf,sscanf_s及其相关使用方法「建议收藏」

    sscanf,sscanf_s及其相关使用方法

    2022年1月18日
    215
  • 制作initramfs镜像_乌班图initramfs问题

    制作initramfs镜像_乌班图initramfs问题Initramfs的制作和移植1.initramfsinitramfs在编译内核的同时被编译并与内核生成一个映像文件,可以压缩也可以不压缩,但是目前只支持cpio包格式。它是根文件系统制作和制作的一种非常简单的方法,也可以通过执行这个文件系统中的程序引导真正的文件系统,这样加载根文件系统的工作就不是内核的工作,而是initramfs的工作。由于initramfs使用cpio包格

    2022年8月11日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号