2024-10-31 10:28:32
计算机四级考试题库及答案,计算机等级考试四级软件测试工程师练习很多人还不知道,现在让我们一起来看看吧!
一、选择题(1-25每题2分,共50分)
下列各题A、B、C、D四个选项中,只有一个选项是正确的。请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
1.问题还没有解决,测试人员新报告的缺陷,或验证后缺陷仍然存在,这些缺陷所处的状态是________。
(A)激活状态
(B)非激活状态
(C)已修正状态
(D)关闭状态
2.关注在一连串的测试中如何选择合适的程序或子程序路径来执行有效的检查,这种测试极有可能是________。
(A)结构测试
(B)黑盒测试
(C)功能测试
(D)静态测试
3.下面说法正确的是________。
(A)软件测试仅是在编程之后进行的测试。
(B)需求规格说明、概要设计规格说明、详细设计规格说明、源程序这些并不全是软件测试的对象。
(C)测试配置是软件配置的一个子集。
(D)错误发现的越晚,改正的代价就越大,这个代价是呈现接近线性增长的趋势
4.在结构化测试用例设计中,有语句覆盖、条件覆盖、判定覆盖(也称分支覆盖)、路径覆盖等,其中________是最强的覆盖准则。
(A)语句覆盖
(B)条件覆盖
(C)判定覆盖
(D)路径覆盖
5.因果图方法是根据________之间的因果关系设计测试用例。
(A)输入和输出
(B)设计和实现
(C)条件和结果
(D)主程序和子程序
6.软件测试的目的是________。
(A)证明软件的正确性
(B)尽可能多地发现软件系统中的错误
(C)找出软件系统存在的所有错误
(D)证明软件系统中存在错误
7.仅根据规格说明书描述的程序功能来设计测试用例的方法称为是________。
(A)白盒测试法
(B)黑盒测试法
(C)静态分析法
(D)人工分析法
8.软件测试方法中,黑盒测试方法和白盒测试方法是常用的方法,其中黑盒测试方法主要用于测试________。
(A)结构合理性
(B)软件外部功能
(C)程序的内部逻辑
(D)程序正确性
9.从下列叙述中选出能够与软件开发需求分析、设计、编码相对应的软件测试________。
(A)集成测试、确认测试、单元测试
(B)单元测试、集成测试、确认测试
(C)单元测试、确认测试、组装测试
(D)确认测试、集成测试、单元测试
10.下列说法正确的是________。
(A)语句覆盖使得每个判定的每个分支至少执行一次
(B)判定覆盖使得每条语句至少执行一次
(C)条件覆盖使得每个判定每个条件应取到各种可能的值
(D)条件组合覆盖使得每个判定中各条件的每一种组合至少出现一次
11.集成测试时,能够较早发现高层模块接口错误的测试方法是________。
(A)自底向上渐增式测试方法
(B)自顶向下渐增式测试方法
(C)非渐增式测试方法
(D)系统测试方法
12.在软件测试信息流中,输入的的信息主要有________。
(A)软件配置
(B)测试配置 考试大(
(C)测试工具
(D)以上全部
13.以下关于软件测试方法,说法正确的是________。
(A)单元测试涉及编码和详细设计的文档
(B)系统测试涉及概要设计信息
(C)确认测试涉及编码和需求规格说明书
(D)集成测试设计其他的系统元素
14.下列软件质量特性中,一般不作为系统测试重点的是________。
(A)产品版本升级是否容易
(B)软件是否符合有关的国家和行业标准
(C)软件产品是否易于理解和使用
(D)可复用的.软件部件所占的比例
15.一般来说,大多数软件缺陷源于软件开发项目的________阶段。
(A)软件测试阶段
(B)程序编写和调试阶段
(C)需求和设计阶段
(D)加班工作期间
16.一般说来,对一个程序单元的测试应满足一些具体的技术要求,或达到一定的技术指标。下面选项中属于单元测试相关的技术要求或指标的是________。
(A)语句覆盖率达到100%
(B)局部变量的边界条件处理正确
(C)逻辑比较和控制流处理正确
(D)以上全部
17.下列软件缺陷中,________是活动状态,________是非活动状态。
(A)打开和解决;关闭
(B)打开;解决和关闭
(C)通过;失败
(D)打开;待验和关闭
18.测试管理工具提供从测试设计到测试运行的全过程支持。这个工具的主要用途是________。
(A)自动抓取屏幕上的系统运行界面
(B)基于需求规格说明书自动生成测试数据、测试用例
(C)测试用例管理、软件缺陷管理、软件测试度量
(D)辅助管理软件产品的各组成部分,使它们保持一致
19.下列比较适合自动化的软件测试活动是________。
(A)测试用例设计
(B)回归测试
(C)测试环境的建立
(D)探查式测试
20.分析性能下降曲线时会把曲线划分为几个区间,那么对于分析性能瓶颈有很大作用的是哪一个下列区间________。
(A)性能平坦区
(B)性能轻微下降区
(C)性能急剧下降区
(D)其他区
21.下面与软件可靠性有关的概念中,理解不正确的是_______。
(A)软件错误不仅包括程序代码的错误,软件开发过程中所有制品的错误及软件的文档、手册中的错误都可以归为软件错误
(B)软件故障是指软件代码中的错误
(C)在软件的一次运行期间,软件故障一定会导致软件失效
(D)通常修改软件故障可以降低软件发生失效的概率,从而提高软件可靠性
22.在实际的面向对象集成测试中,为保证测试的充分性,往往要关注测试类间的各种连接,下面的测试方法不属于针对类间连接的测试是________。
(A)受控异常测试
(B)往返场景测试
(C)模态类测试
(D)类关联的多重性测试
23.以下关于Web应用软件测试的说法中,正确的是________。
(A)数据完整性测试是Web应用软件数据层测试的一项重要内容
(B)内容测试是Web应用软件易用性测试的一项重要内容
(C)表单测试是Web应用软件表示层测试的一项重要内容
(D)链接结构的测试是Web应用软件安全性测试的一项重要内容
24.下列不属于对物理破坏的防护措施的是________。
(A)主要设备远离人为破坏
(B)所有设备远离灾害的侵扰
(C)对通信数据进行加密
(D)主要设备要屏蔽电磁干扰
25.静态分析中,提供整个项目中的所有函数之间的调用关系图属于________。
(A)程序结构分析
(B)程序数据流分析
(C)可视化分析
(D)程序执行频度分析
二、论述题 (1-1每题10分,2-2每题12分,3-3每题28分,共50分
1.论述题1:以下是某手机中的MP3播放器状态之间交互行为的描述,请按要求回答问题(10分)
下面以某手机中的MP3播放器的测试为例,说明如何设计测试案例。
某手机中的MP3播放器有三个状态:待机、播放、停止,播放器最初处于"待机"状态;可能发生的事件有五种:用户单击"打开"按钮,单击"播放"按钮,单击"停止"按钮,单击"返回"按钮,以及播放结束。其中"打开"表示单击"打开"按钮,其他类推。
请画出该播放器中交互行为的状态图(应满足功能图的要求,不可画成流程图)。(10分)
2.论述题2:以下是一个自动饮料售货机软件的操作规格说明,请按要求回答问题(12分)
设要对一个自动饮料售货机软件进行黑盒测试。该软件的规格说明如下:
"有一个处理单价为1元5角钱的盒装饮料的自动售货机软件。若投入1元5角硬币,按下"可乐"、"雪碧"或"红茶"按钮,相应的饮料就送出来。若投入的是2元硬币,在送出饮料的同时退还5角硬币。"
(1)试利用因果图法,建立该软件的因果图(3分)
(2)设计测试该软件的全部测试用例(9分)
3.论述题3:针对以下C语言程序,请按要求回答问题(28分)
下面是一个简单的C语言程序:
int func1(int a,b,c)
{ int k=1;
if((a>0||b<0)) k=k+a;
else k=k+b; 考试大(
if(c>0) k=k+c;
return k;
}
(1)画出该函数的程序流程图。(10分)
(2)设计测试用例,分别使函数的各种逻辑覆盖率尽量达到100%。如果认为该函数的某种逻辑覆盖率无法达到100%,需要说明原因。(10分)
(3)设计特殊的测试用例,说明各种逻辑覆盖之间的关系。(8分)
参考答案与分析
一、选择题(1-25每题2分,共50分)
1. A 2. A 3. C 4. C5. C
6. B 7. B 8. B 9. D10. C
11. B 12. D 13. A 14. D15. C
16. D 17. B 18. C 19. D20. C
21. C 22. C 23. A 24. C25. A
二、论述题
1.首先分析手机中MP3播放器的各种状态有三个:播放、待机和停止。故根据题意找出各种状态之间转换的关系及条件,画出该程序状态图,如下图所示:
2.问题1:
解答:
首先分析软件中出现的所有原因和结果,并将其标号。
原因:
1 投入1元5角硬币
2 投入2元硬币
3 按"可乐"按钮
4 按"雪碧"按钮
5 按"红茶"按钮
结果:
21 退还5角硬币
22 送出"可乐"饮料
23 送出"雪碧"饮料
24 送出"红茶"饮料
中间状态:
11 已投币
12 已按钮
然后根据上述原因和结果,以及各状态间的关系,画出因果图,如图所示:
问题2:
解答:
将上述因果图转换为判定表,如表所示,每一列可以作为确定测试用例的依据。
3.问题1:
解答:
根据源程序易得流程图,如图所示。
问题2:
解答:
经过分析不难知,上面这个程序包含:
1)五个语句:每行一个语句。
2)三个条件:a>0;b<0;c>0
3)四个分支:有两个if语句,每个if语句有两个分支。
4)六个条件组合:条件表达式(a>0)||(b<0) a="">0和 b<0,故有四个条件组合;条件表达式(c>0) 只有一个条件c>0,故有两个条件组合。所以该程序共有六个条件组合。
5)四条路径:从程序的入口到出口的路径共有四条,分别是:
Path1:1-2-3-5-6-8
Path2:1-2-3-5-7-8
Path3:1-2-4-5-6-8
Path4:1-2-4-5-7-8
这个程序有三个输入:a、b、c,其输入数据组合是非常大的。下面对该程序分别应用不同的逻辑覆盖准则,设计测试用例。
1 语句覆盖
根据语句覆盖准则,只需要采用两个输入数据组合:(a,b,c)=(1,1,1)、(-1,1,1),便可以把该程序的所有五个语句执行一遍。
2 分支覆盖(判定覆盖)
根据分支覆盖准则,只需要采用两个输入数据组合:(a,b,c)=(1,1,-1)、(-1,1,1),便可以把该程序的所有四个分支走遍。但未考虑b<0的情况,故不满足条件覆盖。说明满足分支覆盖的测试用例未必满足条件覆盖。
3条件覆盖
根据条件覆盖准则,只需要采用两个输入数据组合:(a,b,c)=(1,1,-1)、(-1,-1,1),便可以把该程序的三个条件的真假情况都覆盖到。 由于表达式(a>0)||(b<0)的计算值都为真,不会执行else语句,即不满足分支覆盖和语句覆盖。说明满足条件覆盖的未必满足分支覆盖和语句覆盖。
4条件组合覆盖
根据条件组合的覆盖准则 只需要采用四个输入数据组合:(a,b,c)=(1,-1,1)、(1,1,1)、(-1,1,-1)、(-1,-1,-1),便可以把该程序的六个条件组合情况覆盖到。但执行的路径数只有2个,故不满足路径覆盖。说明满足条件组合的覆盖不一定满足路径覆盖。
5 路径覆盖
根据路径覆盖的准则,由图 可见,只需要采用四个输入数据组合:(a,b,c)=(1,1,1)、(1,1,-1)、(-1,1,1)、(-1,1,-1),便可以把该程序的所有四条路径都覆盖。路径覆盖是最强的覆盖准则。