实验4、黑盒测试:因果图法及测试用例设计

实验4、黑盒测试:因果图法及测试用例设计

一、实验目的

1、掌握因果图的概念。

2、掌握因果图测试用例设计法。

二、实验任务

以下三个任务、至少完成一个

1、某软件规格说明书包含这样的要求:第一列字符必须是A或B,第二列字符必须是一个数字,在此情况下进行文件的修改,但如果第一列字符不正确,则给出信息N;如果第二列字符不是数字,则给出信息M。用因果图法测试该程序,并撰写实验报告。(注:可以用输出“Modify file”模拟程序中要求的修改文件)

实验步骤:

  1. 分析原因与结果

原因:(1)第一列字符是A

  1. 第一列字符是B
  2. 第二列字符是数字

结果:(21)进行文件的修改

  1. 给出信息N
  2. 给出信息M
  1. 画出因果图

中间节点:(11)第一列字符必须是A或B

  1. 转化为决策表

序号

1

2

3

4

5

6

7

8

条件

1

1

1

1

1

0

0

0

0

2

1

1

0

0

1

1

0

0

3

1

0

1

0

1

0

1

0

中间结果

11

1

1

1

1

0

0

结果

21

0

1

0

1

0

0

22

0

0

0

0

1

1

23

1

0

1

0

0

0

  1. 根据决策表设计测试用例,得到测试用例表

序号

1

2

3

4

5

6

7

8

条件

1

1

1

1

1

0

0

0

0

2

1

1

0

0

1

1

0

0

3

1

0

1

0

1

0

1

0

中间结果

11

1

1

1

1

0

0

结果

21

0

1

0

1

0

0

22

0

0

0

0

1

1

23

1

0

1

0

0

0

测试用例

A6

AL

B1

B3

Q3

CR

测试用例

A8

A%

B2

B@

X5

N/

  1. 测试代码如下

#include <iostream>

#include <string>

#include <cctype>

using namespace std;

int main()

{

string s1, s2;

bool b1 = true, b2 = true;

cin >> s1 >> s2;

if ( s1 != "A" && s1 != "B" ) {

cout << "N";

b1 = false;

}

for ( int i = 0; i < s2.size(); i++ ) {

if ( isdigit( s2[ i ] ) == false ) {

cout << "M";

b2 = false;

break;

}

}

if ( b1 && b2 )

cout << "Modify file";

cout << endl;

return 0;

}

  1. 执行测试,填写软件缺陷报告(软件缺陷报告格式同实验1)。

①测试情况部分截图:

②软件缺陷报告

模块名称

NextDate问题进行软件测试

版本号

V1.0

测试人

XXX

缺陷类型

严重级别

\

可重复性

\

缺陷状态

\

测试平台

Win11

测试软件

Dev C++

简述

无明显缺陷

操作步骤

实际结果

预期结果

注释

无注释,建议适当增加注释,提高程序代码的可读性

  • 4
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值