return k;}
当n=4时,程序中可能的执行路径数为
▪A:2
▪B:4
▪C:8
▪D:16
o9:参:C
参考解析:(P38)单元测试时,调用被测模块的是驱动模块。
o试题内容:
o单元测试时,调用被测模块的是
▪A:桩模块
▪B:通信模块
▪C:驱动模块
▪D:代理模块
o10:参:B
参考解析:(P38)大突击测试把所有的模块一次性集成为一个完整的系统后进行测试,很容易整体崩溃。
o试题内容:
o大突击测试把所有的模块一次性集成为一个完整的系统后进行测试,很容易▪A:通过测试
▪B:整体崩溃
▪C:快速查错
▪D:快速排错
o11:参:D
参考解析:(P175)软件性能指标主要有响应时间、系统响应时间和应用延迟时间、吞吐量、并发用户数、资源利用
率五种。软件实现的算法与系统响应时间和应用延迟时间是直接相关的,所以软件的性能也必定与实现算法是有关系的
。吞吐量是指系统在单位时间内处理请求的数量,对于无并发的应用系统而言,吞吐量是与响应时间严格的反比关系,
但对于其他系统则不一定。资源数量与平均响应时间没有直接关系,因为在具体一个时间点,所占用的资源往往并不多
,即若处理单个请求,在每个时间点都可能会有许多资源被闲置,当处理多个请求时,平均响应时间也与资源调配是否
合理有关,与资源数量没有直接关系。另外,并发用户数是性能的一个重要指标,所以选项D“对于一个网络,其支持的
同时发送请求的用户数越大,该网站的性能越好”完全正确。
o试题内容:
o以下关于软件性能的说法中,正确的是
▪A:软件性能与该软件的实现算法无关
▪B:软件的吞吐量越大,其平均响应时间总是越短
▪C:给软件的可用资源越少,其平均响应时间越短
▪D:对于同一个网站,其支持的同时发送请求的用户数越大,该网站
的性能越好
o12:参:B
参考解析:(P209)Web应用软件数据层测试包括两个方面:一是数据完整性的测试,二是大数据量数据库的性能测
试,故选项A说法正确。Web应用软件功能测试通常针对链接测试、表单测试和Cookie测试三个方面进行,故选项C说法正
确。Web应用软件安全性测试主要包括服务器端的内容安全性、客户端的内容安全性和Cookie安全性三个方面,由此选项D说法正确。内容测试和易用性测试都是Web应用软件的测试策略,不具有从属关系,故选项B说法错误。
o试题内容:
o以下关于Web应用软件测试的说法中,错误的是
▪A:数据完整性测试是Web应用软件数据层测试的一项重要内容
▪B:内容测试是Web应用软件易用性测试的一项重要内容
▪C:表单测试是Web应用软件功能测试的一项重要内容
▪D:客户端内容安全性的测试是Web应用软件安全性测试的一项重要
内容
o13:参:B
参考解析:(P179)依据测试目标不同,可以把软件性能测试及与性能有关的其他测试分为:①性能测试
(Performance Testing);②并发测试(Concurrency Testing);③压力测试(Stress Testing);④可靠性测试
(Reliability Testing);⑤负载测试(Load Testing);⑥配置测试(Cnfigurmion Testing);⑦失效恢复测试(Recovery
Testing)。
o试题内容:
o以下哪种软件测试属于软件性能测试的范畴
▪A:接口测试
▪B:压力测试
▪C:单元测试
▪D:易用性测试
o14:参:C
参考解析:(P183)性能计数器是指与性能有关的资源利用率指标,基于性能计数器的分析技术有内存分析、处理器
分析、磁盘I/O分析、进程分析。
o试题内容:
o以下分析技术中,哪一种技术不属于基于性能计数器的分析技术
▪A:内存分析
▪B:处理器分析
▪C:通信中断分析
▪D:进程分析
o15:参:D
参考解析:(P214)Web应用软件表示层的测试主要集中在客户端,测试的内容包括:排版结构的测试;链接结构的
测试;客户端程序的测试;浏览器兼容性测试。
o试题内容:
o以下哪一项不属于Web应用软件表示层测试关注的范畴
▪A:排版结构的测试
▪B:链接结构的测试
▪C:浏览器脚本程序的测试
▪D:应用服务器兼容性测试
o16:参:A参考解析:(P181)软件可靠性测试过程包括五个步骤:①确定可靠性目标;②定义软件运行剖面;③设计测试用例
;④实施可靠性测试;⑤分析测试结果。所以说定义软件运行剖面是软件可靠性测试的重要步骤,故选项A正确。
o试题内容:
o以下关于软件可靠性测试的说法中,正确的是
▪A:定义软件运行剖面是软件可靠性测试的重要步骤
▪B:软件可靠性测试使用的测试用例应该满足分支覆盖
▪C:软件可靠性测试可以在单元测试中实施
▪D:软件可靠性预测模型的作用是指导软件可靠性测试中的测试用例
生成
o17:参:A
参考解析:(P191)面向对象软件开发与传统的结构化软件开发在分析和设计的视角、系统开发的过程和工作制品的
组织和表示等方面都有很大不同,因此在测试方面也有其自己的特点,所以面向对象软件的白盒测试不能简单地、不加
改变地照搬传统软件的白盒测试准则,所以A正确。面向对象软件具有封装、继承和多态三个特点,这些特点都可能为面
向对象软件测试带来困难,面向对象要考虑继承关系和对类中单个方法的测试这是显然的,由于多态的特点,对一个类
的测试,一个测试用例包含对该类几个方法的多次调用都是可能的。
o试题内容:
o以下关于面向对象软件测试的说法中,正确的是
▪A:面向对象软件的白盒测试不能不加改变地照搬传统软件的白盒测
试准则
▪B:对于一个类的测试,一个测试用例只能包含对该类的一个方法的
一次调用
▪C:面向对象软件测试不考虑对一个类中的单个方法的测试
▪D:面向对象软件测试不必考虑对继承关系的测试
o18:参:A
参考解析:(P227)考查兼容性测试。
o试题内容:
o以下哪一项不属于兼容性测试关注的范畴
▪A:服务器端是否同时支持浏览器和专用客户端的访问
▪B:软件是否同时支持数据库的不同版本
▪C:软件是否支持以前版本的数据格式
▪D:软件是否可以在不同的J2EE应用服务器上运行
o19:参:B
参考解析:(P231)功能易用性是指用户能否方便、快速、准确地使用软件提供的功能来完成需要完成的任务。由于
功能易用性与用户的主观感受十分密切,功能易用性测试通常需要有用户参与,甚至要求由用户担任测试人员,一般功
能易用性测试涉及面很广,其主要内容有:①业务符合度;②功能定制性;③功能的关联度;
④数据的共享度;⑤用户约束的合理性;⑥反馈的及时性。其中反馈的及时性问题通常包括两个方面:软件能否提供有效反馈;软件能否在执行
耗时较长的操作期间提供反馈。
o试题内容:
o以下哪一项属于功能易用性测试关注的范畴
▪A:软件提供的功能是否丰富
▪B:当执行耗时较长的任务时,软件是否能定时向用户提示当前任务
完成的进度
▪C:软件是否能够在多种操作系统环境下运行
▪D:软件是否能在不同的硬件配置下运行
o20:参:C
参考解析:(P197)大突击集成是将系统的所有组成成分都一次性集成到一起进行测试,是非增量式集成测试。而自
底向上集成与自顶向下集成都是增量式集成测试,三者都是传统软件测试中很常用的集成测试策略。协作集成就是在集
成测试时,针对系统完成的功能,将可以相互协作完成特定功能的类集成在一起进行测试。基干集成从某种角度讲,是
集中了自底向上集成、自顶向下集成和大突击集成三者的优点,更适合大型复杂项目的集成,但若对于代码质量要求高
,人力资源比较充足的项目,自底向上集成应该会更好。三种集成方法在测试充分性上应该视项目不同也不同。
o试题内容:
o以下关于面向对象程序集成测试的说法中,正确的是
▪A:大突击集成是一种综合运用自底向上集成与自顶向下集成的集成
测试策略
▪B:自底向上集成测试比自顶向下集成测试需要开发的代码更多
▪C:协作集成是指将可以协作完成特定系统功能的类集成在一起进行
测试
▪D:与自底向上集成和自顶向下集成相比,基干集成是一种更充分的
集成测试策略
o21:参:A
参考解析:(P250)测试过程的4项基本活动是测试策划、测试设计、测试总结和测试执行。
o试题内容:
o测试过程的4项基本活动是测试策划、测试设计、测试总结和
▪A:测试执行
▪B:测试报告
▪C:测试度量
▪D:测试需求
o22:参:B
参考解析:(P251)软件测试过程管理的原则有8个:有关测试需求,测试计划先行,建立任务优先级,建立客观的
评估标准,尽早测试,全面测试,全过程测试,的、迭代的测试。
o试题内容:
o下列有关测试过程管理的基本原则,哪个是错误的
▪A:测试过程管理应该首先建立测试计划
▪B:测试需求在测试过程中可以是模糊的、非完整的
▪C:在测试任务较多的情况下,应该建立测试任务的优先级来优化处
理
▪D:整个测试过程应该具有良好的可测性和可跟踪性,强调以数据说
话
o23:参:C
参考解析:(P254)制定测试计划,要达到的目标有:为测试各项活动制定一个现实可行的、综合的计划,包括每项
测试活动的对象、范围、方法、进度和预期结果;为项目实施建立一个组织模型,并定义测试项目中每个角色的责任和
工作内容;开发有效的测试模型,能正确地验证正在开发的软件系统;确定测试所需要的时间和资源,以保证其可获得
性和有效性;确立每个测试阶段的测试完成及测试成功的标准和要实现的目标;识别出测试活动的各种风险,并消除可
能存在的风险,降低那些无法消除的风险所带来的损失。
o试题内容:
o下列哪个选项不属于测试计划要达到的目标
▪A:为测试各项活动制定一个现实可行的、综合的计划,包括每项测
试活动的对象、范围、方法、进度和预期结果
▪B:为项目实施建立一个组织模型,并定义测试项目中每个角色的责
任和工作内容
▪C:为测试执行活动设计测试方案,编制测试用例
▪D:确定测试需要的时间和资源,以保证其可获得和有效性o24:参:A
参考解析:(P301)计算机软件测试规范规定,软件测试管理包括测试过程管理、配置管理和测试评审管理。
o试题内容:
o软件测试管理包括测试过程管理、配置管理以及
▪A:测试评审管理
▪B:测试用例管理
▪C:测试计划管理
▪D:测试实施管理
o25:参:D
参考解析:(P302~306)计算机软件测试规范规定,软件测试可分为:单元测试、集成测试、配置项测试、系统测试
和验收测试。其中配置项测试的目的是检验软件配置项和软件需求规格说明是否一致。配置项测试的技术依据是软件需
求规格说明(含接口需求规格说明),一般由软件供方组织,由于软件开发的人员实施,软件开发人员配合。若配置
项测试委托第三方实施,一般应委托国家认可的第三方测试机构。软件配置项测试要求被测软件配置项已通过单元测试
和集成测试。
o试题内容:o以下说法中错误的是
▪A:软件配置项测试的目的是检验软件配置项与软件需求规格说明的
一致性
▪B:软件配置项测试一般由软件供方组织,由于软件开发的人员
实施,软件开发人员配合
▪C:软件配置项测试要求被测软件配置项已通过单元测试和集成测试
▪D:软件配置项测试不得委托第三方实施
二、论述题 (共3题,共50分)
1.试题内容:
一个系统的登录操作规格说明如下:
登录对话框有两个数据输入:用户名和密码。登录操作对两个输入数据进行检查,要求用户名中只能包含字母和数字(
字母不区分大小写),密码可以包含任何字符。用户名和密码都不能为空且长度不限。当用户名或密码为空时,则登录失
败并提示对应的出错信息;当用户名不正确或用户名不存在或密码错误时,则登录失败并提示以下三种相应的出错信息
:用户名不合法(即包含有非字母、非数字字符),或用户名不存在,或密码错误;当用户名和密码都正确时,则显示登
录成功信息,完成登录.假设正确的用户名是abcd123,密码是123456 试用等价类方法为上述规格说明设计等价类表(10分)和测试用例(10分)。参:
针对以下C语言程序,请按要求回答问题。
已知weekday.c源程序如下:
#include#include/*主函数*/
int main()
{
char letter;
printf("please input the first letter,"Y"to exit!\n");while((letter=getch())!=Y)/*当输入字母为Y时结束*/{
switch(letter)
{
case S:
printf("%c\n",letter);
printf("please input second letter\n");
//输入第二个字母
if((letter=getch())==a)
printf("Saturday\n");
else if(letter==u)
printf("sunday\n");
else printf("data error\n");
break;
case F:
printf("fridaykn");
break;
caseM:
printf("mondayha");
break;
caseT:
printf("%c\n",letter);
printf("please input second letter\a");
//输入第二个字母
if((letter=getch())==u)
printf("tuesday\n");
else if(letter==h)
printf("thursday\n");
else printf("data error\n");
break;
case W:printf("wednesday\n");
break;
default:
printf("data error\n");
}
}
return 0;
}
1.画出主函数main的控制流程图;(8分)
2.设计一组测试用例,使main函数的语句覆盖率尽量达到100%;(11分)
3.main函数的语句覆盖率能否达到100%?如果认为无法达到,需说明原因。(1分)参:
1.
2.【path1】1,22
【path2】2,3
【path3】2,3,4,5,22
【path4】2,3,6,7,22
【path5】2,3,6,8,22
【path6】9,10,22
【path7】11,12,22【path8】13,14
【path9】13,14,15,16
【path10】13,14,17,18,22
【path11】13,14,8,22
【path12】19,20,22
【path13】19,8,22
生成测试用例,确保基本路径集中每条路径的执行
Path1、输入数据y,输出结果程序结束返回值0
Path2、输入数据s,输出结果“s 输入第二个字母”
Path3、输入数据s后,输入数据a,输出结果“Saturday”
Path4、输入数据s后,输入数据u,输出结果“Sunday”
Path5、输入数据s后,输入数据非a非u,输出结果“data error”
Path6、输入数据f,输出结果“friday”
Path7、输入数据m,输出结果“monday”
Path8、输入数据t,输出结果“输入第二个字母”
Path9、输入数据t后,输入数据u,输出结果“tuesday”
Path10、输入数据t后,输入数据h,输出结果“thursday”
Path11、输入数据t后,输入数据非u非h,输出结果“data error”
Path12、输入数据w,输出结果“wednesday”
Path13、输入数据defalt,输出结果“data error”
3.不能达到100%,一些的路径如此程序中的【输入】,往往不是完全孤立的,有时候他是程序正常的控制流的一部
分,这时,这些路径的测试可以是另一条路径测试的一部分。
试题内容:
某邮件系统测试项目中的测试执行阶段按计划在5天后结束,将进入测试总结阶段。测试管理人员通过QESuite Web
Version 1.0测试过程管理工具观察到下列测试项目信息:(如下表)
1.请依据以上表格中内容,说明在测试用例设计和测试用例执行两方面存在的问题,并简要指明原因。(6
分)
2.已知软件问题处理状况如下:
测试项目当前处在“待验”状态的软件问题有307个,处在“新建”状态的软件问题有35个,处在“打开”状态的软件问
题有243个。测试组的软件问题处理能力是70个软件问题/工作日,开发组修复软件问题的能力是40个软件问题/工作日
。
请根据测试执行阶段剩余的天数与软件问题处理状况信息,说明开发组和测试组在软件问题处理方面存在的问题,并简
要指明原因。(4分)
参:1.子系统下安装功能区域未指明,客户端管理功能区域没有设计测试用例,邮件系统的功能设置测试用例未执行完,其
中还有5个用例未执行。
测试用例设计存在问题:功能区域划分不详细,客户端管理的测试用例没有覆盖到,用例覆盖不全面。测试执行存在问
题:存在未执行的用例。
2.存在问题是开发组和测试组不能在5天后完成工作。根据题中描述的数据,开发组中要修改的问题数是243+35=278,需
要修改时间是278/40=7天;测试组即便新建的问题不需要修改,需要时间是:(307+243)/70=8天。