软件工程导论(第六版)张海藩-牟永敏课后习题答案 联系客服

发布时间 : 星期二 文章软件工程导论(第六版)张海藩-牟永敏课后习题答案更新完毕开始阅读2fdaefa50a1c59eef8c75fbfc77da26924c596ec

END IF PRINT (X,Y,Z) STOP

答:此程序的语句覆盖用例:①A=5,B=10,C=15;②A=6,B=11,C=16 条件覆盖用例为:①A=5,B=10,C=15;②A=6,B=11,C=16。

语句覆盖测试用例

序判定 输入 预期的输

号 1

F 1 2 T

2 3 A B C X Y Z

F F 1 1 1 1 2 3 T T 20 40 60 10 20 30

语句覆盖的含义是,选择足够多的测试数据,使被测试程序中的每个语句至少执行一次。

序号

判定 1

F F F F T

2 F F T T F

3 F T F T F

输入 预期

1 2 3 4 5

A B C X 1 1 1 1 1 1 60 1 1 40 1 1 1 40 60 1 20 1 1 10

第五题

5、某图书馆有一个使用CRT终端的信息检索系统,该系统有下列4个基本检索命令

要求:

(1) 设计测试数据以全面测试系统的正常操作;

(2) 设计测试数据以测试系统的非正常操作

解:⑴测试系统正常操作的测试数据 ①顺序执行下列3个命令:

b(KEYWORD) s(L) d(N)

其中,KEYWORD是正确的关键字;L是执行命令b后在屏幕上显示的约20个行号中的一个(至少应该使L分别为第一个、最后一个和中央一个行号);N是执行命令s后列出的索引号中的一个(至少应该使N分别为第一个、最后一个和中央一个索引号)。

针对若干个不同的KEYWORD重复执行上述命令序列。 ②顺序执行下列2个命令:

f(NAME) d(N)

其中,NAME是已知的作者姓名;N是执行命令f后列出的索引号中的一个(至少应该使N分别为第一个、最后一个和中央一个索引号)。

针对若干个不同的NAME重复执行上述命令序列。

⑵测试系统非正常操作的测试数据

①用过长的关键字作为命令b的参数:例如,b(reliability software and hardware combined)

预期的输出:系统截短过长的关键字,例如,上列命令中的关键字可能性被截短为reliability software

②用不正确的关键字作为命令b的参数:例如,b(AARDVARK) 预期的输出:显示出最接近的匹配结果,例如,执行上列命令后可能显示 1.AARON,JULES(book)

③用比执行命令b后列出的最大行号大1的数作为命令s的参数 预期的输出:“命令s的参数不在行号列表中” ④用数字和标点符号作为命令b和命令f的参数 预期的输出:“参数类型错”

⑤用字母字符作为命令s和命令d的参数 预期的输出:“参数类型错”

⑥用0和负数作为命令s和命令d的参数 预期的输出:“参数数值错”

⑦命令顺序错:例如,没执行命令b就执行命令s,或没执行命令s就执行命令d

预期的输出:“命令顺序错”

⑧命令语法错:例如,遗漏命令名b、s、d或f;或命令参数没用圆括号括起来

预期的输出:“命令语法错”

⑨命令参数空:例如,b()、s()、d或f() 预期的输出:系统提供默认参数或给出出错信息 ⑩使用拼错了的作者姓名作为f的参数 预期的输出:“找不到这们作者的著作” 第六题

6、航空公司A向软件公司B订购了一个规划飞行路线的程序。假设你是软件公司C的软件工程师,A公司已雇用你所在的公司对上述程序进行验收测试。任务是,根据下述事实设计验收测试的输入数据,解释你选取这些数据的理由。 领航员向程序输入出发点和目的地,以及根据天气和飞机型号而初步确定的飞