软件测试考卷

更新时间:2023-11-25 15:00:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

[键入文字]

一、选择题(每题 2 分,共 20 分)

1、下面关于软件测试的说法,( )是错误的。 A.软件测试就是程序测试

B.软件测试贯穿于软件定义和开发的整个期间

C.需求规格说明、设计规格说明都是软件测试的对象 D.程序是软件测试的对象

2、下列各项中( )不是一个测试计划所应包含的内容。 A.测试资源、进度安排 B.测试预期输出 C.测试范围 D.测试策略

3、关于软件测试的说法,( )是不正确的。

A.代码审查是代码检查的一种,是由程序员和测试员组成一个审查小组,通过阅读、讨论和争议,对程序进行静态分析的过程。

B.软件测试的对象不仅仅是程序,文档、数据和规程都是软件测试的对象。 C.白盒测试是通过对程序内部结构的分析、检测来寻找问题的测试方法。 D.单元测试是针对软件设计的最小单位——程序模块进行正确性检验的测试工作,它通常需要开发辅助的桩模块作为主程序调用被测模块来完成测试。

4、通常测试用例很难100%覆盖测试需求,因为( )。

①输入量太大 ②输出结果太多 ③ 软件实现途径太多 ④ 测试依据没有统一标准 A.①② B.①③ C.①②③ D.①②③④

5、针对下列程序段,对于(A,B)的取值,以下( )测试用例组合能满足条件覆盖的要求。

If((A-10)==20 and (B+20)>10) then C=0 If((A-30)<10 and (B-30)<0) then B=30

① A=50 B=-10 ② A=40 B=40 ③ A=30 B=-10 ④ A=30 B=30 A.①② B.③④ C.①④ D.②④

6、针对逻辑覆盖,以下( )叙述是不正确的。

A.达到100%CC要求就一定能够满足100%DC的要求 B.达到100%DCC要求就一定能够满足100%DC的要求 C.达到100%MDCC要求就一定能够满足100%DC的要求 D.达到100%路径覆盖要求就一定能够满足100%DC的要求

7、配置测试( )。

A.是指检查软件之间是否正确交互和共享信息 B.是交互适应性、实用性和有效性的集中体现

[键入文字]

C.是指使用各种硬件来测试软件操作的过程 D.检查缺陷是否有效改正 8、( )是性能测试工具。

A.LoadRunner B.WinRunner C.QTP D.TestDirector

9、进行单元测试过程中,通常测试工程师都需要借助( )来代替所测模块调用的子模块。 A.桩模块 B.驱动模块 C.桩模块和驱动模块 D.存根模块和驱动模块

10、A&&(B||C) 执行逻辑覆盖测试,测试用例至少需要( )种组合才能满足多条件覆盖的要求。

A.6 B.4 C.8 D.12

二、判断题(每题 1 分,共 10分)

1、软件测试是对软件质量的度量与评估,并可以保证软件质量。 ( ) 2、测试的最终目标是zero bug,以保证软件的质量。 ( )

3、集成测试也叫做组装测试,通常在编码完成的基础上,将所有的程序模块进行有序的、递增的测试。 ( ) 4、找出的软件缺陷越多,说明软件剩下的缺陷越少。 ( )

5、软件缺陷产生的主要来源是设计方案。 ( ) 6、测试应从“小规模”开始,逐步转向“大规模”。 ( )

7、邻居集成策略使得缺陷定位变得困难,但是可以降低桩模块和驱动模块的开发工作量。

( )

8、缺陷的严重性越高,其处理优先级别也越高。 ( ) 9、软件测试过程中发现的所有缺陷必须都得到修复。 ( )

10、数据驱动测试是从功能的角度检查软件是否满足需求规格说明的要求,逻辑驱动测试则需研究程序的内部逻辑结构。 ( )

三、填空题(每空1分,共10分)

1、public class Triangle {

protected long lborderA = 0; protected long lborderB = 0; protected long lborderC = 0;

public Triangle(long lborderA, long lborderB, long lborderC) { }

this.lborderA = lborderA; this.lborderB = lborderB; this.lborderC = lborderC;

[键入文字]

public boolean isTriangle(Triangle triangle) {

boolean isTrue = false;

if((triangle.lborderA>0&&triangle.lborderA<200) &&(triangle.lborderB>0&&triangle.lborderB<200) &&(triangle.lborderC>0&&triangle.lborderC<200))

{

if((triangle.lborderA<(triangle.lborderB+triangle.lborderC)) &&(triangle.lborderB<(triangle.lborderA+triangle.lborderC)) &&(triangle.lborderC<(triangle.lborderA+triangle.lborderB)))

isTrue = true;

} return isTrue; }

public String isType(Triangle triangle) {

String strType = \ if(this.isTriangle(triangle)) {

if(triangle.lborderA==triangle.lborderB&&triangle.lborderB==triangle.lborderC) strType = \等边三角形\ else if((triangle.lborderA!=triangle.lborderB)&&

(triangle.lborderB!=triangle.lborderC)&& (triangle.lborderA!=triangle.lborderC)) strType = \不等边三角形\ else strType=\等腰三角形\ }

return strType; }

}

测试代码:

import junit.framework.TestCase;

public class exampletest extends 1 { public ______2_____ triangle; protected void setUp() throws Exception {

super.setUp();

triangle=new Triangle(12,12,13);

}

public void testIsTriangle() {

____3_____(triangle.__ ___4_____);

[键入文字]

}

public void testIsType()

{ assertEquals(triangle.isType(triangle),__ ___5____); }

public static void main(String[] args){

junit.textui.TestRunner.run( 6 );

}

2、缺陷管理的流程可以概括为:测试人员提交新的错误入库,缺陷状态为 7 ;项目经理将缺陷分配给相应的开发人员,缺陷状态为 8 ;开发人员查重现缺陷,做如下处理:如果不是缺陷,则置状态为“拒绝”,如果是缺陷则修复并置状态为 9 ,如果不能解决的错误,要留下文字说明并保持错误为“拒绝”状态;测试人员查询状态为 9 的错误,验证错误是否已解决,做如下处理:如问题解决了置错误的状态为 10 。

四、名词解释题(每题 5 分,共 20 分)

1、软件缺陷 2、?测试和?测试 3、桩模块和驱动模块 4、压力测试和负载测试

五、简答题(共 20 分)

1、什么是单元测试?什么是集成测试?什么是系统测试?他们的测试依据是什么?(6分) 2、公司A 承担了业主B 的办公自动化系统的建设工作。2004 年10 月初,项目正处于开发阶段,预计2005 年5 月能够完成全部开发工作,但是合同规定2004 年10 月底进行系统验收。因此2004 年10 月初,公司A 依据合同规定向业主B 和监理方提出在2004 年10 月底进行验收测试的请求,并提出了详细的测试计划和测试方案。在该方案中指出测试小组由公司A 的测试工程师、外聘测试专家、外聘行业专家以及监理方的代表组成。公司A 的做法是否正确?请给出理由。(6分)

3、简述面向对象的软件测试模型包括哪些方面,及其主要测试内容。(8分)

六、综合题(共 20 分)(无详细步骤不得分)

1、基本路径法设计出的测试用例能够保证在测试中程序的每一条可执行语句至少执行一次。以下代码由C语言书写,请按要求回答问题。(10分)

int ReadPara( CString temp) {

if ( temp == \ m_oper= 0; else

[键入文字]

{

if (temp == \ m_oper=1;

else {

if ( temp == \ m_oper=2;

else {

if( temp == \ m_oper=3;

else {

if ( temp == \ m_oper=4; else

m_oper=5; } } } }

return m_oper; }

[问题1] (2分)

请画出以上代码的程序图。 [问题2] (2分)

请计算上述程序图的环路复杂度V(G)。

[问题3] (6分)

请使用基本路径测试法为变量temp设计测试用例,使之满足基本路径覆盖要求。

2、试用等价类划分法设计测试用例。(10分)

某城市的电话号码由三部分组成。这三部分的名称和内容分别是 地区码:空白或三位数字;

前 缀:非’0’或’1’开头的三位数; 后 缀:四位数字。

假定被测试的程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的号码,试用等价类划分法来设计它的测试用例。

本文来源:https://www.bwwdw.com/article/z6st.html

Top