[计算机类试卷]计算机新国家四级软件测试工程师模拟试卷29及答案与解析.doc

上传人:arrownail386 文档编号:506590 上传时间:2018-11-29 格式:DOC 页数:23 大小:244KB
下载 相关 举报
[计算机类试卷]计算机新国家四级软件测试工程师模拟试卷29及答案与解析.doc_第1页
第1页 / 共23页
[计算机类试卷]计算机新国家四级软件测试工程师模拟试卷29及答案与解析.doc_第2页
第2页 / 共23页
[计算机类试卷]计算机新国家四级软件测试工程师模拟试卷29及答案与解析.doc_第3页
第3页 / 共23页
[计算机类试卷]计算机新国家四级软件测试工程师模拟试卷29及答案与解析.doc_第4页
第4页 / 共23页
[计算机类试卷]计算机新国家四级软件测试工程师模拟试卷29及答案与解析.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

1、计算机新国家四级软件测试工程师模拟试卷 29及答案与解析 一、一、选择题(每小题 2分,共 50分) 下列各题 A、 B、 C、 D四个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。 1 通常走查小组中,程序编写者占几个 _。 A) 0个 B) 1个 C) 2个 D) 不确定 2 程序独立测试的人员应该是 _。 A) 程序员自己 B) 同一开发组的测试人员 C) 第三方测试人员 D) 同一开发组的其他成员 3 一个多用户的应用系统通常有用户管理功能,允许增 加新的用户。用户信息一般包括用户名,假设规定用户名必须是以字母开头的、不超过 8个字符的字母数字串,那

2、么,下面哪组值均属于用户名的有效等价类 _。 ( A) allllll, L, Lin-Yie, Lin-feng ( B) L1, allllll, glenford, 123B123 ( C) linyifei, allllll, glenford, Myers ( D) linyifei, allllll, glenford, GMyers 4 关于逻辑覆盖,下列说法正确的是 _。 ( A)在单元测试中不使用黑盒测 试技术 ( B)满足分支覆盖就一定满足条件覆盖和语句覆盖 ( C)覆盖所有的独立路径就能够覆盖所有的分支 ( D)白盒测试技术不同于黑盒测试技术之处是它可以减少测试用例数量

3、5 以下不属于内容测试范畴的是 _。 ( A)测试数据库中的内容 ( B)测试服务器端程序是否在数据处理过程中引入错误内容 ( C) Cookie测试内容 ( D)测试客户器端程序是否在数据处理过程中引入错误内容 6 以下不属于面向构件的提供者的构件测试目标是 _。 ( A)检查为特定项目而创建的新构件的质量 ( B)检查在特定平台和操作环境中构件的复用、打包和部署 ( C)尽可能多地揭示构件错误 ( D)验证构件的功能、接口、行为和性能 7 若使用自动化管理,显然一些文档性管理已不能满足其需要,此时可以采用的技术是 _。 ( A) XML技术 ( B)数据库技术 ( C)严格的数据格式文件

4、( D)以上皆可 8 在软件开发过程中, _是造成软件风险的重要因素。 ( A)需求理解有误 ( B)软件变更 ( C)测试用例不充分 ( D)数据分析 9 下列关于 Web应用软件的系统安全检测与防护说 法不正确的是 _。 ( A)对系统安全漏洞的检测同样也属于测试的范畴 ( B) Web应用软件的安全性仅与 Web应用软件本身的开发相关 ( C)系统安全检测与防护应当作一个系统工程来完成,仅仅经过入侵检测和漏洞扫描是不够的,在这其中最重要的应该是建立完善的安全策略 ( D)访问安全是指控制外界对主机的访问,从而减少甚至避免非法的访问和使用 10 关于测试的策划,说法不正确的是 _。 ( A

5、)测试设计的任务是执行测试用例,需要时也可以将测试用例设计与执行并行开展 ( B)若系统对质量要求 很高,则需要开展多次的回归测试验证 ( C)在实际软件项目中,一个测试团队可能大都是骨干人员 ( D)测试团队的规模与被测系统规模、测试方资源调配情况有关 11 软件测试是软件开发过程中重要和不可缺少的阶段,其包含的内容和步骤甚多,而测试过程的多种环节中最基础的是 _。 ( A)集成测试 ( B)单元测试 ( C)系统测试 ( D)验收测试 12 因果图方法是根据 _ 之间的因果关系设计测试用例。 ( A)输入和输出 ( B)设计和实现 ( C)条件和结果 ( D)主程序和子程序 13 下列关于

6、面向对象程序的测试组织问题的说法中,正确的是 _。 A) 在面向对象程序测试中,通过执行程序代码完成的测试通常包括单元测试、集成测试和系统测试 3个主要方面 B) 在面向对象程序中的一个类可以作为被独立测试的单元 C) 在面向对象程序测试中,很容易对一个类中的单个成员方法进行充分的单元测试 D) 由于集成测试目标相同,结构化程序的集成测试技术都适用于对类的测试 14 关于易用性测试,说法错误的是 A)对软件功能的动态关联进行测试可以通过检查菜单完成 B)使用软件的目的就 是减少重复输入,减轻人工劳动,提高工作效率 C)检查和评估软件安装手册的正确性和易用性是安装性测试的重要内容 D)用户界面测

7、试是软件易用性测试最重要的一项内容 15 下列不属于物理破坏的防护措施的是 A)所有设备远离灾害的侵扰 B)主要设备要屏蔽电磁干扰 C)对通信数据进行加密 D)主要设备远离人为破坏 16 下列选项中不属于性能计数器的分析技术的是 A)内存分析 B)进程分析 C)处理器分析 D)通信中断分 析 17 以下说法错误的是 _。 A) 软件产品的质量越高,发布后维护成本就越低 B) 在软件测试中一般只需要运行预先设计的所有测试用例 C) 通常应该在需求阶段设计系统测试用例,以此作为需求检查的辅助手段 D) 发现和修复产品中的软件缺陷越早,开发费用就会越低 18 测试计划活动中最关键的一步是 A)收集信

8、息 B)确定测试需求和测试层次 C)内部审查 D)测试计划的定稿和批准 19 比较传统的软件单元测试与面向对象软件的单元测试的内容,下列说法错误的是 _。 A) 传统的软件单元测试的对象是软件设计的最小单位 模块,测试依据是详细设计说明书 B) 单元测试应对模块内所有重要的控制路径设计测试用例,以便发现模块内部的错误 C) 面向对象软件很难对单个成员方法进行充分的测试,具有良好封装性的类称为单元测试的基本对象 D) 面向对象软件的测试大多采用白盒测试技术,系统内多个模块可以并行的进行测试 20 依据 GB/T 155322008计算机软件测试规范软件测试应由相对独立的人员进行。以下选项中不属于

9、测试设计员具体职责的是 _。 A) 管理监督测试 项目或测试组 B) 设计测试用例 C) 确定测试用例的优先级 D) 建立测试环境 21 比较传统的软件单元测试与面向对象软件的单元测试的内容,下列说法错误的是 _。 A) 传统的软件单元测试的对象是软件设计的最小单位 模块,测试依据是详细设计说明书 B) 单元测试应对模块内所有重要的控制路径设计测试用例,以便发现模块内部的错误 C) 面向对象软件很难对单个成员方法进行充分的测试,具有良好封装性的类称为单元测试的基本对象 D) 面向对象软件的测试大多采用白盒测试技术,系统内多个模块可以并行地进行测试 22 以下关于面向对象软件测试的说法中,正确的

10、是 A) 大突击集成是最有效的面向对象软件集成测试策略 B) 在面向对象软件的单元测试中,一棵继承树上的每个类都需要进行测试 C) 针对一个类的多个实例间协作的测试属于面向对象软件集成测试考虑的范畴 D) 在面向对象软件的单元测试中,基于判定表的测试是类层次测试的常用方法 23 以下关于面向对象软件测试的说法中,错误的是 A) 面向对象软件的大突击集成测试只进行一轮,无需增量集成 B) 测试一个类的不同实例间的协作属于面向对象软件单元测试考虑的范畴 C) 测试动态绑定属于面向对象软件单元测试考虑的范畴 D) 等价类划分是一种类树层次的测试技术 24 大突击测试把所有的模块一次性集成为一个完整的

11、系统后进行测试,很容易_。 ( A)通过测试 ( B)整体测试 ( C)快速查错 ( D)快速排错 25 在软件性能测试中,下列指标中哪个不是软件性能的指标 _。 ( A)响应时间 ( B)吞吐量 ( C)资源利用率 ( D)并发进程数 二、二、论述题( 3题,共 50分 ) 论述题答题必须用蓝、黑色钢笔或圆珠笔写在论述题答题纸的相应位置上 ,否则无效。 26 根据你对单元测试的理解,谈谈在任何情况下单元测试都是可能的吗 ?都是需要的吗 ? 26 以下是某应用程序的规格描述,请按要求回答问题。 程序规则:实现某城市的电话号码,该电话号码由 3部分组成。它的说明如下:区号:空白或 3位数字;前缀

12、:非 “0”或 “1”开头的 3位数字;后缀: 4位数字。 27 请分析该程序的规则说明和被测程序的功能,采用等价类划分方法设计测试用例。 28 你认为应该由谁来进行确认测试 ?是软件开发者还是软件用户 ?为什么 ? 29 以下是某手机中的 MP3播 放器状态之间交互行为的描述,请按要求回答问题。 下面以某手机中的 MP3播放器的测试为例,说明如何设计测试案例。 某手机中的 MP3播放器有 3个状态:待机、播放、停止,播放器最初处于 “待机 ”状态;可能发生的事件有 5种:用户单击 “打开 ”按钮,单击 “播放 ”按钮,单击 “停止 ”按钮,单击 “返回 ”按钮,以及播放结束。其中 “打开 ”

13、表示单击 “打开 ”按钮,其他依次类推。 请画出该播放器中交互行为的状态图 (应满足功能图的要求,不可画成流程图 )。 29 关于软件测试过程,请回答以下问题。 30 软件测试过 程模型主要有哪些 ?各有何特点 ? 31 应当如何正确选取过程模型 ? 31 针对以下 C语言程序,请按要求回答问题。 以下是一个用来求解一元二次方程的 C语言程序: 1 main() 2 3 float a,b,c,x1,x2,delta; 4 scanf(“%f*f%f“, 5 if(a!=0) 6 7 delta=b*b-4*a*c; 8 if(delta 0) 9 10 x1=(-b+sqrt(delta)/

14、(2*a); 11 x2=(-b-sqrt(delta)/(2*a); 12 printf(“x1=%f,x2=%fn“, x1,x2); 13 14 else 15 16 if delta=0) 17 18 x1=-b/(2*a); 19 printf(“x1=%fn“, x1); 20 21 else 22 23 printf(“no real solutionn“); 24 25 26 27 32 画出 main()函数的控制流图。 33 采用基本路径测试法设计一组测试用例,保证每个基本独立 路径都至少执行一次。 34 根据你对单元测试的理解,谈谈在任何情况下单元测试都是可能的吗 ?都是

15、需要的吗 ? 35 在企业信息管理系统中。人员信息查询是最常见的。使用以下 3个独立的查询条件: 1)员工号 (ID) 2)员工姓名 (Name) 3)员工邮件地址 (eMail) 每个查询条件可有可无,但不能都没有;且条件的取值可以是能查到的,也可以是查不到的。当出现多个查询条件时,按 IDNameeMail 的顺序查询。如果某一条件未出现,则检查下一条件;如果某一条件出现,则检查满足该条件取值的信息是否存在:若不 存在,立刻中止查询,并输出失败信息;若存在,继续下一条件查询,最后输出查询结果。要求 (1)画出实现查询的程序流程图。 (12分 ) (2)给出一组测试路径,能覆盖程序流程图的所

16、有分支。 (8分 ) 35 针对以下 C语言程序,请按要求回答问题。 已知 link. c源程序如下: /*link. c程序对单向链表进行操作,首先建立一个单向链表,然后根据用户的选择可以对其进行插入结点、删除结点和链表反转操作 */ #include stdio. h #include stdlib. h typedef struct list_node * list_pointer; /定义链表指针 typedef struct list_node /定义链表结构 int data; list_pointer link; list_node; /用到的操作函数 list_pointer

17、create(); /建立一个单向链表 void insert(list_pointer * p_ptr, list_pointer node); /在 node后加入一个新的结点 void delete_node(list_pointer * p_ptr, list_pointer trail, list_pointer node); /删除前一个结点是 trail的当前结点 node void print(list_pointer * p_ptr); /打印链表结点中的值 list_pointer invert(list_pointer lead); /反转链表 int main() li

18、st_pointer ptr=NULL; list_pointer node, trail; list_pointer * P= ptr; int choose, location, i; printf(“you should create a link first: n“); /建立一个单向链表 prt=create(); /ptr指向链表的第一个结点 print(ptr); /根据用户的不同选择进行相应的操作: printf(“input number 0, you can quit the programn“); printf(“input number 1, you can inser

19、t a new node to linkn“): printf(“input number 2, you can delete a node from the linkn“); printf(“input number 3, you can invert the linkn“): printf(“please input you choicen“); scanf(“%d“, choose); while(choose!=0) switch(choose) case 1: i=1: while(i location) node=node- link; i+: insert(p, node); /

20、p为指向 ptr的指针 print(ptr); break; case 2: printf(“you will delete a node from the linkn“); printf(“please input the location of the node: n“); scanf(“%d“, &location): node=ptr; if(location=1) trail=NULL; trail=ptr; i=1: while(i location) trail=trail- link: i+: node=trail- link; delete_node(p, trail, no

21、de); print(ptr); break; case 3: printf(“you will invert the linkn“); ptr=invert(ptr); print(ptr); break; default; break; return -1; printf(“please input you choicen“); scanf(“%d“. choose): return 0; /根据用 户的输入值建立一个新的单向链表: list_pointer create() int i, current, length; list_pointer p1, p2, head; printf

22、(“please input the node number of the link: n“); scanf(“%d“. length): printf(“the number of the link is: %d“, length); printf(“please input the data for the link node: n“); i=0; p1=p2=(list_pointer)malloc(sizeof(list_node); head=p1; for(i=1; i length; i+) scanf(“%d“, current); p1- data=current; p2-

23、link=p1; p2=p1; p1=(list_pointer)malloc(sizeof(list_node); p2- link=NULL; return head; 36 画出主函数 main的控制流程图。 37 设计一组测试用例,尽量使 main函数的语句覆盖率能达到 100%。如果认为该函数的语句覆盖率无法达到 100%,需要说明原因。 计算机新国家四级软件测试工程师模拟试卷 29答案与解析 一、一、选择题(每小题 2分,共 50分) 下列各题 A、 B、 C、 D四个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。 1 【正确答案】 B 【试题解

24、析】 走查 (Walkthrough)是对程序进行模拟,一步步地展示程序如何处理测试数据,其主要目标是发现缺陷、遗漏和矛盾的地方,改进产品,考虑可替换的实现方法。走查是以小组为单位进行的,是一系列规程和错误检查技术的集合,参加走查小组的人员有限制,通常仅有一人是程序编写者。 【知识模块】 代码检查、走查与评审 2 【正确答案】 C 【试题解析】 独立测试是指软件测试工作由在经济上和管理上独立于开发机构的组织进行。采用独立测试方式,无论在技术上还是管理上,都对提高软件测试的有效性具有重要意义,对软件测试的 客观性、专业性、权威性、资源的保证等方面都有较大的影响。 【知识模块】 软件测试的基本概念

25、 3 【正确答案】 C 【知识模块】 功能 (黑盒 )测试 4 【正确答案】 C 【知识模块】 功能 (黑盒 )测试 5 【正确答案】 C 【知识模块】 Web应用软件测试 6 【正确答案】 A 【知识模块】 其他测试 7 【正确答案】 D 【知识模块】 软件自动化测试 8 【正确答案】 B 【知识模块】 软件测试实践 9 【正确答案】 B 【试题解析 】 系统的安全漏洞其实也算是系统的缺陷,所以安全漏洞的检测也属于测试的范畴。实际上, Web应用软件的安全性不仅仅与 Web应用软件本身的开发相关。入侵检测和漏洞扫描是系统安全检测与防护的两个重要方面,但对于实际的安全检测与防护,仅注意这两个方

26、面是不够的,而应该把系统安全检测与防护当作一个系统工程来完成,而这其中最重要的是建立完善的安全策略。访问安全就是指控制外界对主机的访问,从而减少甚至避免非法的访问和使用,因此访问安全策略又称为访问控制策略。 10 【正确答案】 C 【试题解析】 在实际的软件项目 中,一个测试团队不可能大都是骨干人员,要考虑成本。 11 【正确答案】 B 【试题解析】 软件测试是软件开发过程中重要和不可缺少的阶段,其包含的内容和步骤甚多,而测试过程的多种环节中最基础的是单元测试。 12 【正确答案】 A 【试题解析】 因果图方法是根据输入和输出之间的因果关系设计测试用例的。 13 【正确答案】 A 【试题解析】

27、 在面向对象程序测试中,通过执行程序代码完成的测试通常包括单元测试、集成测试和系统测试 3个主要方面。其中单元测试的基本要求是被测单元被独立地测试, 而在测试面向对象程序时,由于一个类的各个成员方法通常是相互联系的,因而很难对一个类中的单个成员方法进行充分的单元测试。面向对象程序中的一个类甚至也不能作为被独立测试的单元,主要原因一方面是由于继承的存在,一个类通常依赖于其父类和其他祖先类;另一方面由于面向对象程序经常出现多个类相互依赖。集成测试是针对程序的集成结构进行,在面向对象程序中,许多集成机制在传统结构化程序中没有,因而结构化程序的集成测试技术难以适用于对类的测试。 14 【正确答案】 A

28、 【试题解析】 软件功能的关联包括静态关联和动态关联 ,其中对于静态关联的测试可以通过检查菜单完成,而对于动态关联的测试需要针对各项任务设计测试用例,以检查软件能否合理引导用户使用下一步需要的功能。故选项 A不正确。 15 【正确答案】 C 【试题解析】 物理破坏的防护措施有二点,分别为选项 A、 B、 D,选项 c不属于此范畴。 16 【正确答案】 D 【试题解析】 基于性能计数器的分析技术有内存分析、处理器分析、磁盘 I O分析和进程分析等。 17 【正确答案】 B 18 【正确答案】 B 【试题解析】 测试计划不可能一气呵成,而是要 经过计划初期、起草、讨论和审查等不同阶段,才能将测试计

29、划制定好,且不同的测试阶段或不同的测试任务都可能需要具体的测试计划。测试计划具体细分为: 计划初期是收集信息。 确定测试需求和测试层次。 计划起草。 内部审查。 计划讨论和修改。 测试计划的多方审查。 测试计划的定稿和批准。 其中测试计划最关键的一步就是确定测试需求和测试层次。 19 【正确答案】 D 【试题解析】 A、 B选项关于传统的软件单元测试的描述都是正确的, C选项关于面向对象软件单元测试的描述也是正确的。 D选项描述的内容不是面向对象软件测试的内容,而是传统的软件设计的单元测试的内容。所以不要产生混淆。 20 【正确答案】 A 21 【正确答案】 D 22 【正确答案】 B 23

30、【正确答案】 C 24 【正确答案】 B 【试题解析】 大突击测试与增量测试不同,它是把所有的模块一次性集成为一个完整的系统后进行完全测试,所有东西都集成到一起测试,很容易整体测试,也容易导致整个崩溃。大突击测试的优点是无须编写桩模块和驱动模块代码。不足有两点: 一是要找出导致失效的原因很困难;二是一个模块中存在的缺陷还可能妨碍其他模块的测试。 25 【正确答案】 D 【试题解析】 软件的性能是软件的一种非功能特性。它关注的不是软件是否能够完成特定的功能而是在完成该功能时展现出来的及时性。为了能够客观地度量软件的性能,人们定义了一系列性能指标,以便于能够在不同情况下度量软件的性能。通常合理的软

31、件性能指标有响应时间、系统响应时间和应用延迟时间、吞吐量、并发用户数、资源利用率五种,而题目选项 D中 “并发进程数 ”不能作为性能指标,故答案为 D。 二、二、论述题( 3题,共 50分 ) 论述题答题必须用蓝、黑色钢笔或圆珠笔写在论述题答题纸的相应位置上,否则无效。 26 【正确答案】 单元测试又称模块测试,是针对软件设计的最小单位 程序模块,进行正确性检验的测试工作。其目的在于发现各模块内部可能存在的各种差错。单元测试需要从程序的内部结构出发设计测试用例。多个模块可以平行地独立进行单元测试。 单元测试是在编码阶段完成的,每编写出一个程序模块,就开始做这个模块的单元测试,所以只要采用模块化

32、方法设计开发的软件,单元测试都是必需的。这时单元测试通常由编写程序的人来完成 。因为它需要根据程序的内部逻辑结构设计测试用例,对于那些不了解程序内部细节的人,单元测试无法进行。 27 【正确答案】 首先分析程序的规则说明和被测程序的功能,将其划分等价类并编号,如下: 有效等价类输入: (1)区号:空白; (2)区号: 3位数字; (3)前缀:从 200 999的 3位数字; (4)后缀: 4位数字。 无效等价类输入: (5)区号:有非数字字符; (6)区号:少于 3位数字; (7)区号:多于 3位数字; (8)前缀:有非数字字符; (9)前缀:起始位为 “0”; (10)前缀:少于 3位数字;

33、 (11)前缀:多于 3位数字; (12)后缀:有非数字字符; (13)后缀:少于 4位数字; (14)后缀:多于 4位数字。 根据上述等价类的划分,设计测试用例如下: 有效测试用例输入,如表 6所示。28 【正确答案】 在对照需求做功能测试和软件配置复审时,是由软件开发者在开发环境下进行的测试。而接下来做验收测试时则以用户为主。软件开发人员和QA(质量保证 )人员也应参加。由用户参加设计测试用例,使用用户界面输入测试数据,并分析测试的输出结果。一般使用生产中的实际数据进行测试。 如果软件是为多个客户开发的 ,则需要进行 测试和 测试。 测试是由一个用户在开发环境下进行的测试,也可以是公司内部

34、的用户在模拟实际操作环境下进行的测试。软件在一个自然设置状态下使用。开发者坐在用户旁边,随时记下错误情况和使用中的问题。这是在受控制的环境下进行的测试。 测试是由软件的多个用户在一个或多个用户的实际使用环境下进行的测试。这些用户是与公司签订了支持产品预发行合同的外部客户,他们要求使用该产品,并愿意返回有关错位错误信息给开发者。与 测试不同的是,开发者通常不在测试现场。因而, 测试是在开发者无法控制的环境下进行的软件现场应用 。 【试题解析】 首先搞清楚确认性测试的含义及整个测试过程,在确认测试阶段主要任务是确认软件的有效性,即确认软件的功能和性能及其他特性是否与用户的要求一致。该阶段需要做的工

35、作包括功能测试和软件配置复审。具体由谁来执行,应根据阶段不同而不同。 29 【正确答案】 首先分析手机中 MP3播放器的各种状态有 3个:播放、待机和停止。故根据题意找出各种状态之间转换的关系及条件,画出该程序状态图,如右图所示。 30 【正确答案】 V模型: V模型反映出测试活动与分析设计活动的关系。指出单元测试和集成 测试应检测程序的执行是否满足软件设计的要求。系统测试应检测系统功能、性能的质量特性是否达到系统要求的指标。验收测试确定软件的实现是否满足用户需要或合同的要求。 W模型: W模型指出软件各开发阶段中应同步进行的验证和确认活动,即测试与开发也应是同步进行的。 W模型有利于尽早和全

36、面地发现问题。 H模型: V模型与 W模型有不妥,即它们都把软件的开发视为需求、设计和编码等一系列串行的活动,而事实上,这些活动是可以交叉进行的。 H模型揭示一点:软件测试是一个独立的流程,贯穿于产品的整个生命周期中, 与其他流程并发进行。 其他模型: 除了上面几种常见模型外,还有 X模型、前置测试模型等。 31 【正确答案】 在实践中,应当尽可能地运用各个模型中对项目有实用价值的方面,不能强行地为使用模型而使用模型。建议采用的方法是:以 W模型作为框架,及早、全面地开展测试,同时灵活运用 H模型独立测试的思想,在达到恰当的就绪点时就应该开展独立的测试工作,同时将测试工作进行迭代,最终保证完成

37、测试目标。 32 【正确答案】 根据程序的源代码,容易画出对应的控制流图,如下图所示 (其中圈中的数字代表的是语句的行号 )。 33 【正确答案】 第一步,根据上述控制流图计算该程序的环路复杂性。 由图可以看出,判定结点数为 3,边数为 9,结点总数为 7,故 V(G)=9-7+2=4 或 V(G)=3+1=4 或 V(G)=4 第二步,根据环路复杂度为 4,可确定 4条基本独立路径。 Path1: 527 Path2: 582627 Path3: 5816182627 Path4: 5816232627 第三步,设计测试用例。 根据上面 4条基本独立路 径,可以设计测试用例如下: 测试用例

38、1: 输入数据: a=0, b=1, c=1 预期输出结果:程序结束 (这时方程不是二元一次方程 ) 测试用例 2: 输入数据: a=1, b=3, c=2 预期输出结果: x1=-1, x2=-2 测试用例 3: 输入数据: a=1, b=-2, c=1 预期输出结果: x1=1 测试用例 4: 输入数据: a=1, b=1, c=1 预期输出结果: no real solution 34 【正确答案】 单元测试又称模块测试,是针对软件 设计的最小单位 程序模块,进行正确性检验的测试工作。其目的在于发现各模块内部可能存在的各种差错。单元测试需要从程序的内部结构出发设计测试用例。多个模块可以平

39、行地独立进行单元测试。 单元测试是在编码阶段完成的,每编写出一个程序模块,就开始做这个模块的单元测试,所以只要采用模块化方法设计开发的软件,单元测试都是必需的。这时单元测试通常由编写程序的人来完成。因为它需要根据程序的内部逻辑结构设计测试用例,对于那些不了解程序内部细节的人,单元测试无法进行。 35 【正确答案】 (1)流程图 36 【正确 答案】 主函数的控制流程如下图所示。 37 【正确答案】 设计测试用例如下: 输入数据: choose=0,预期输出: 0。 输入数据: choose=1,预期输出:在链表某位置的结点后插入一个结点。 输入数据:choose=2,预期输出:删除链表中某个位置的结点。 输入数据: choose=3,预期输出:反转链表的链接顺序。 输入数据: choose=其他非零数,预期输出: -1。 采用条件覆盖设计的测试用例如下表所示。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1