软件测试(本科)课程
形成性考核册
中央广播电视大学工学院
使用说明
本形考册是中央广播电视大学软件工程(本科)专业软件测试课程形成性考核的依据,与《软件测试(本科)》教材(贺平 编著,中央电大出版社出版,2011,1)配套使用。
本课程3学分,共54学时,在一个学期内开设。本课程的特点为综合性强,基本理论知识及基本技术方法的覆盖面宽、课程基本涵盖了软件测试全貌,同时实践性也较强。学习本课程,不仅要求同学们正确理解、掌握软件测试的基本知识和基础理论,更要求能够运用这些知识与技术方法,分析所面对的软件测试的(工程)问题,结合软件工程、软件设计、软件编程的相关知识与技术,通过实践运用,学会对软件测试问题的分析、技术方法运用策略及过程,完成实际测试任务。
本课程的形成性考核成绩占课程总成绩的30%(终结性考试成绩占课程总成绩的70%,课程总成绩按百分制记分,60分为合格。
形成性考核按百分制计分,每次形成性考核任务也按照百分制计分。形考任务的形式为综合性的,共有5次,其中作业形式3次,主要检查课程学习情况,检查对课程内容理解与掌握的程度;实践是完成本课程学习目标的重要组成部分,实践环节培养同学们运用软件测试技术方法解决实际测试程序(案例)的重要环节,主要培养和考核大家对这方面的掌握程度及工程应用的能力,实践形式2次。考核成绩由地方电大教师根据学生完成情况进行评定。两种形成性方式考核,每次均占20%。
软件测试作业1
(本作业覆盖教材中的第1至2章的内容)
一、单项选择题(每小题3分,共45分) 1.软件测试目的可以是:( B )
A. 发现缺陷
B. 确认软件能够正常运行 C. 预防缺陷
D. 直接提高产品的售价 E. 减少整个产品开发周期时间 a) A, B b) A, B, C c) A, B, C 和 D d) 所有选项
2.基本的测试过程主要由下面哪些活动组成:( B )计划和控制(control)
B. 分析和设计 C. 实现和执行
D. 评估准出准则和测试报告 E. 测试结束活动 a) A, B 和 C b) A, B, C 和 D c) 除 E 以外所有选项 a) 所有选项
3.关于测试作用的描述,不正确的是:( A )
a) 测试无法显示软件潜在的缺陷; b) 测试能保证软件的缺陷和错误全部找到;
c) 测试只能证明软件存在错误而不能证明软件没有错误; d) 所有的软件测试都应追溯到用户需求。 4.可维护性测试属于:( )
a) 非功能测试
b) 功能测试 c) 结构测试 d) 确认和回归测试
5.有一个系统已经在市场上运行了,这种情况对系统进行修改,然后进行的测试:( )
a) 维护测试 b) 验收测试 c) 组件测试 d) 系统测试
6.下面哪些是一个好的测试的特点:( ) A. 每个开发活动都有相对应的测试行为 B. 每个测试级别都有其特有的测试目标
C. 对于每个测试级别,需要在相应的开发活动过程中进行相应的测试分析和设计D. 软件测试的工作重点应该集中在系统测试上 a) C,D b) A,B c) A,B,C d) A,B,C,D
7.目前大部分的软件错误来源于( )。
a) 程序错误; b) 分析和设计错误; c) 测试本身的错误; d) 需求错误。
8.传统的或面向对象的单元测试,需要的开发工作:( )
a) 只要开发测试stub; b) 只要开发测试driver;
c) 可能要同时开发一个stub和多个driver; d) 可能要同时开发一个driver和多个stub。 9.组件测试的用例设计主要参考的工作产品是:( )
a) 组件规格说明 b) 系统需求规格说明
c) 用户手册 d) 代码
10.关于软件质量保证和软件测试的描述,不正确的是:(
a) 软件质量保证和软件测试是软件质量工程的两个不同层面的工作; b) 在软件质量保证的活动中也有一些测试活动; c) 软件测试是保证软件质量的一个重要环节; d) 软件测试人员就是软件质量保证人员。 11.关于测试充分性的描述,正确的是:( )
a) 只有进行完全的测试才充分;
b) 在有限时间和资源条件下,找出所有的软件的错误,使软件趋于完美,是不可能的; c) 当继续测试没有发现新缺陷时; d) 当全部测试用例都执行完后。
12.描述黑盒测试和白盒测试不同点正确的说法是:( )
A. 黑盒测试在测试对象的表面进行 B. 白盒测试是在源代码已知的情况下进行
C. 黑盒测试用例是通过测试对象的使用说明或需求设计 D. 黑盒测试包括语句覆盖和分支覆盖方法 E. 白盒测试是通过因果图的分析方法进行的
a) A,B,C b) A,C c) A,B,C,D,E d) D,E
13.软件测试是软件开发过程中重要的质量保证活动,系统测试工作应该开始于:( )
a) 产生需求分析规约后; b) 产生需求分析规约前; c) 产生概要设计规约后; d) 产生概要设计规约前; e) 所有代码完成后。
14.通常验收测试应完成的内容,包含:明确验收项目,规定验收测试通过的
标准;决定验收测试组织机构,利用的资源;选定测试结果分析方法;( ),做出
验收结论,确任通过验收或不通过验收。
A. B.
指定验收测试计划并进行评审; B 设计验收测试所用的测试用例; 审查验收测试准备工作; C 执行验收测试与分析测试结果;
a) A b) A, B c) A,B,C d) A,B,C,D
15.性能测试梯度是:( )
A 一般性能测试; B稳定性测试;
C负载测试; D压力(或强度)测试; a) A b) A, B c) A,B,C d) A,B,C,D 二、简答题(共55分)
1.简要分析软件测试发展历程中的演变趋势及其内涵变化的重要特征。(8分)
2. 为何说软件缺陷的最大来源是软件需求规格说明?(8分)
3. 简述软件测试的几个典型模型、分析其共同点与各自特点。(8分)
4. 简述ISO 9126定义的软件质量体系结构分级组成特性,其中的6个主要质量特证及其子 特性的内涵。(8分)
5.简要归纳组件测试的主要思想、测试对象、测试内容、技术特征及测试过程。(8分)
6.简述软件生命周期中的测试概念,分析V模型的本质特征。(8分)
7. 总结软件测试的分类及其关系,测试种类和方法的适用领域和能解决的问题范围。(7分)
软件测试作业2
(本作业覆盖教材中的第3至4章的内容)
一、单项选择题(每小题2分,共30分)
1.一个参数的取值范围是正整数,那么这个参数的有效边界值的数目是:( A )
a) 一个 b) 二个 c) 三个 d) 四个
2.下面对静态测试和动态测试的区别描述正确的是:( A )
a) 静态测试并没有真正的运行软件,而动态测试需要运行软件 b) 静态测试需要借助于专门的测试工具,而动态测试不需要
c) 静态测试是由开发人员执行的,而动态测试是由专门的测试人员完成
d) 静态测试是主要是为了增加测试人员对软件的理解,而动态测试是为了发现缺陷 3.决策表测试法适用于具有以下特征的应用程序:( D )
A. if-then-else逻辑关系突出 B. 输入变量之间存在逻辑关系 C. 涉及输入变量子集的计算 D. 输入与输出之间存在因果关系
a) A b) A,B c) A,B,C d) A,B,C,D
4.等价类划分法是把程序的输入域划分为若干部分,然后从每个部分中选取( C ) 代表性数据当作测试用例。 a) 少数 b) 多数 c) 一个 d)二个
5.定义基于状态的测试用例,应考虑信息:( D )
A. 测试对象的初始状态(组件或系统) B. 测试对象的输入 C. 期望输出或期望行为 D. 期望的结束状态
a) A b) A, B c) A, B, C
d) A, B, C, D
6.对静态测试和动态测试的区别描述正确的是:( A )
e) 静态测试并没有真正的运行软件,而动态测试需要运行软件 f) 静态测试需要借助于专门的测试工具,而动态测试不需要
g) 静态测试是由开发人员执行的,而动态测试是由专门的测试人员完成
h) 静态测试是主要是为了增加测试人员对软件的理解,而动态测试是为了发现缺陷 7 . 多出口函数可能会发生( B )问题。
a) 产生逻辑错误 b) 降低可靠性 c) 产生内存泄漏 d) 降低运行性能
8. 技术评审的目的是:( D )
a) 保证软件在独立的模式下进行开发 b) 发现软件业务错误 c) 与项目管理无关
d) 确认软件符合预先定义的开发规范和标准 9. 走查主要包括以下哪些内容:( D )
A .检查代码和设计的一致性; B.标准的遵循和可读性; C.评审对象主要是软件代码; D.不安全、不明确和模糊的部分 a) 除A以外 b) 除D以外 c) 除A和D以外 d) 以上全部都是
10. 使用静态测试的接口分析一致性涉及:( C ) A. 各模块之间接口一致性;
B. 模块与外部数据库接口的一致性;
C. 形参与实参在类型、数量、顺序、维数,使用上的一致性; D. 全局变量和公共数据区在使用上的一致性。 a) A b) A、B c) A、B、C
d) A、B、C、D
11.函数覆盖是针对系统或一个子系统测试,它表示在该测试中,有哪些函数被测试到了,
其被测试到的( A )有多大,这些函数在系统所有函数中所占是多少。 a) 频率 b)数量 c) 次数 d) 用例次数
12.一个程序的控制流图如下图所示,根据圈复杂度的计算方法,该程序的复杂度为:( B )
a)2 b)3 c)4 d)5
13.对复杂性较大程序做到所有路径覆盖(测试所有可执行路径)是不可能的。根据独立
路径概念,某一程序的独立路径是:( B )
a) 指从程序入口道程序出口的多次执行中,每次至少是一个语句集是新的或未被重复的。 b) 若用流图来进行描述,独立路径就是在从入口进入流图,至少走过一个弧。 c) 若用流图来进行描述,独立路径就是在从入口进入流图,要走过所有的弧。 d)指从程序入口道程序出口的多次执行中,每次至少是所有语句集。
14.一般称简化循环意义下的路径覆盖为Z路径覆盖。这里所说对循环化简化是指:( C )a)限制循环次数
b)无论循环形式和实际执行循环体次数多少,只考虑循环一次
c)无论循环形式和实际执行循环体次数多少,只考虑循环一次和零次2种情况。 D)只考虑执行时进入循环体一次和跳过循环体。
15.针对嵌套循环,不能采用简单循环的测试办法。为减少测试次数,提出的测试方法中,正
确的是:( ABCD )
a) 测试从最内层循环开始,将其它循环设置为最大值,内层循环按简单循环测试方法进行; b) 对最内层循环使用简单循环,而使外层循环迭代参数(循环计数)最小,并为范围外或 排除的值增加其它测试;
c) 由外向内构造几个循环测试,其它外层循环为最小值。由内向外进行嵌套循环,每回退 一层后进行一次测试,本层循环所有外层循环仍取最小值,而由本层循环嵌套的循环取某些“典型”值;
d) 不断向内层向外层上升,直到所有循环测试完毕。
二、简答题(共40分)
1.简要总结静态测试的控制流分析技术及软件复杂度度量。(10分)
教材:P74-75-77
2.试总结和归纳基本的评审原则、评审目标、评审过程、评审类型。评审的组织、过程及 主要活动。(10分)
教材: P100评审原则 -103
3.归纳总结本章介绍的黑盒测试技术方法,分析黑盒测试技术的实质及要点,掌握黑盒测试技术主要测试方法的思路,比较各种黑盒测试技术方法及其适用领域,并说明如何应用这些技术进行测试用例设计。(10分)
教材P110 因果图 决策表 白盒测试的路径 语句覆盖
4.归纳总结本章介绍白盒测试逻辑覆盖规则,比较每种覆盖的特点,并分析其覆盖强度,在怎样的情况下采用何种覆盖方式?(10分)
教材 P136
三、设计题(共30分)
1. 试用等价类划分法与边界值分析法解决下列测试实际问题,并设计出测试用例。(10分)
某公司关于节日奖金计算方法描述如下:员工在公司工作时间超过3年,可得到相当于其月收入的50 %的奖金;在公司的工作年限超过5年,可得到相当于月收入的75 %的奖金;
工作时间超过8年,可得到相当于其月收入100 %的奖金。根据该奖金发放规则,请列出正确的有效等价类vEC和测试用例代表值;无效等价类iEC和测试用例代表值。
2.试用因果图与决策表测的方法,解决下列测试实际问题,并设计给出测试用例。(10分) 自动饮料售货机软件程序测试问题。一自动售货机的自动售货功能如下所述:若投入2元5角硬币,按下“绿茶”、“奶茶”、“红茶”按钮,相应的饮料就自动送出。若投入3元硬币,在送出饮料的同时退回5角硬币。试运用因果图法设计测试用例。
提示:(1)分析问题的文字说明,列出原因与结果。可设立中间状态:已投币;已按钮。
(2)根据原因和结果,可设计一个因果图。
(3)将因果图转换为决策表。表的每一列可作为确定测试用例的依据。
3.给出以下C程序段,试设计基本路径测试的测试用例。要求设计出的测试用例保证每一个基本独立路径至少要执行一次。(10分)
函数说明:当i_flag=0;返回i_conut+100
当i_flag=1;返回i_count*10 否则 返回 i_count*20 输入参数:int i_count int i_flag 输出参数:int i_return 程序代码:
1 int test (int i_count,int i_flag) 2 {
3 int i_temp = 0; 4 while (i_count > 0) 5 {
6 if (i_flag == 0) 7 {
8 i_temp = i_count +100; 9 break; 10 } 11 else 12 {
13 if (i_flag == 1) 14 {
15 i_temp = i_temp + 10; 16 } 17 else 18 {
19 i_temp = i_temp + 20; 20 } 21 }
22 i_count--;
23 }
24 return i_temp 25 }
提示:(1)画出程序控制流图(注意节点的标示);
(2)计算环形复杂度(圈数); (3)导出程序基本路径; (4)设计测试用例。
软件测试作业3
(本作业覆盖教材中的第5至6章的内容)
一、单项选择题(每小题3分,共45分)
1.软件自动化测试生存周期方法学反映和代表了自动化测试的结构化策略及方法论。应用它在设计自动化测试时可参照规范和有效模式,软件自动化测试生存周期方法学分为:自动化测试方式决策;( C );测试执行和管理;测试评审与评估。
A.自动化测试工具的获取; B.自动化测试的引入过程; C.测试计划制定与测试设计; D.测试用例设计与缺陷管理; a)A b)A,B c)A,B,C
d)A,B,C,D 教材 P-155
2.应用软件系统在客户端性能测试的目的是检测客户端应用的性能。测试的入口处是客户端,其测试内容主要包括:( C )
A 并发性能测试 B 疲劳强度测试 C大数据量测试 D速度测试
a) A b) A,B c) A,B,C d) A,B,C,D
3.测试人员(Tester)在软件配置管理中工作主要是:( A )
a) 根据配置管理计划和相关规定,提交测试配置项和测试基线; b) 建立配置管理系统; c) 提供测试的配置审计报告; d) 建立基线。 教材 P-210
4.测试管理工具可能包括的功能:( D ) A.管理软件需求; B.管理测试计划;
C.缺陷跟踪; D.测试过程中各类数据的统计和汇总
a) 除A以外 b) 除B以外
c) 除C和D以外 d) 以上全部
5.关于测试人员沟通能力的描述,不正确的是:( C )
a) 测试人员要和分析、设计很好的沟通;
b) 如果测试人员把自己发现缺陷作为一个新闻来传播,那么会给沟通带来麻烦; c) 测试人员不需要和代码开发人员很好的沟通; d) 测试人员和测试leader之间也应该具有好的沟通。
6.图形用户界面的测试(GUI testing)主要包括的内容:( D )
A.界面显示测试;B.界面功能测试;C.可用性测试;D.易用性测试。 a) A,B b) A,B,C c) C,D d) A,B,C,D
7.下列哪些可能属于缺陷属性:( C )
A.缺陷标识;B.缺陷发现者;C.缺陷类型;D.缺陷严重程度;E.缺陷优先级; F.缺陷状态。 a) A,B b) A,B,C c) C,D,E,F d) 全都是
8.测试管理工具可能包括的功能,有:( D ) A 管理软件需求; B 管理测试计划; C 缺陷跟踪;
D 测试过程中各类数据的统计和汇总。 请选择下列答案中正确的回答:( D ) a) 除A以外 b) 除B以外 c) 除C和D以外 d) 以上全部
9. 引入自动化测试工具时,属于次要考虑因素的是:( C )
a) 与测试对象进行交互的质量 b) 使用的脚本语言类型 c) 工具支持的平台
d) 厂商的支持和服务质量 教材P-190 10.测试计划主要由哪个角色负责制定:( D )
a)测试人员 b)项目经理 c)开发人员
d)测试经理 教材P-190
11. 测试经理的任务通常不包括:( C )
a)编写测试计划
b) 选择合适的测试策略和方法 c) 建立和维护测试环境 d)选择和引入合适的测试工具
12. 对于测试过程来说,哪些工作产品要纳入配置管理?( D )
a) 测试对象(The test object)、测试材料(the test material)和测试环境 b) 问题报告和测试材料 c) 测试对象
d) 测试对象和测试材料
13. 测试报告不包含的内容有:( D )
a) 测试时间、人员、产品、版本; b) 测试环境配置; c) 测试结果统计; d) 测试通过/失败的标准
14. 如没有做好配置管理工作,那么可能会导致:( B )
A 开发人员相互篡改各自编写的代码; B 集成工作难以开展;
C 问题分析和故障修正工作被复杂化; D 测试评估工作受阻。
在a)、b)、c)、d) 4个选项中选择正确的回答。 a) A、C b) B、D c) A、B、C d) A、B、C、D
15.( D )是将测试输入存储在独立的文件中,而不是存储在脚本中。脚本中存放控制信息。它的优点包括:脚本与数据分离,数据文件以适当的文件格式单独维护、测试设计者不必具备脚本技术或编程知识
a) 结构化脚本 b) 关键字驱动脚本 c) 共享式脚本
d) 数据驱动脚本 教材P*159
二、简答题(每题11分,共55分)
1.简要描述软件自动化测试生命周期方法学的意义和作用。(11分) 答:教材 P*155
生命周期的六部分 决策表 获取 过程 设计开发 管理 测试评估
2.简述自动化测试脚本的意义与作用,并对各种测试脚本进行分析和总结。(11分)
答: 教材P*159 特点 意义 自己组织归纳总结
3. 列出使用软件自动化测试的优势与实际好处,分析自动化测试可能带来的风险、不足和问题。(11分)
答:教材 P*161 答作用一段即可
4. 简述测试事件的管理,缺陷的管理(流程)、测试用例管理与测试配置管理。(11分)
答: 教材P*205 缺陷管理全过程 7项 教材P*208 测试用例管理 (1) (2)总共 教材P*210-P*211 三个重点 总结归纳即可
5.简述测试事件的管理,缺陷的管理(流程)、测试用例的管理。(11分)
答: 教材P*205 缺陷管理全过程 7项 教材P*208 测试用例管理 (1) (2)总共 教材P*210-P*211 三个重点 总结归纳即可
软件测试实践项目
1.结合教材第3、4章的应用实例(或自己在实践作业中的选题),在任务完成后,以“文档”的形式提交作业。该文档一般情形包括:被测试对象问题描述(或程序规格说明书、源程序代码等),测试分析设计(或过程性文字、图、表等),测试用例设计等内容。
2.各地电大教师根据不同阶段的要求和学生的实际完成情况等为学生做出评价。满分为100分。
一、 实践项目1 (选自教材中第3章内容)
给出以下C程序段,试设计基本路径测试的测试用例。要求设计出的测试用例保证每一个基本独立路径至少要执行一次。 函数说明:当i_flag=0;返回i_conut+100
当i_flag=1;返回i_count*10 否则 返回 i_count*20 输入参数:int i_count int i_flag 输出参数:int i_return 程序代码:
1 int test (int i_count,int i_flag) 2 {
3 int i_temp = 0; 4 while (i_count > 0) 5 {
6 if (i_flag == 0) 7 {
8 i_temp = i_count +100; 9 break; 10 } 11 else 12 {
13 if (i_flag == 1) 14 {
15 i_temp = i_temp + 10; 16 } 17 else 18 {
19 i_temp = i_temp + 20; 20 } 21 }
22 i_count--; 23 }
24 return i_temp 25 }
提示:(1)画出程序控制流图(注意节点的标示); (2)计算环形复杂度(圈数); (3)导出程序基本路径; (4)设计测试用例。
二、 实践项目2 (选自教材中第4章内容)
自动饮料售货机软件程序测试问题。一个自动售货机的自动售货功能如下所述:若投入2元5角硬币,按下“绿茶”、“奶茶”、“红茶”按钮,相应的饮料就自动送出。若投入3元硬币,在送出饮料的同时退回5角硬币。试设计该问题的测试用例。
(解题要求:(1)分析问题的说明,列出原因与结果。可设立中间状态:已投币,已按钮;(2)根据原因和结果,可设计一个因果图。(3)将因果图转换为决策表。表的每一列可作为确定测试用例的依据。该测试问题能否解决,主要考察是否掌握了相应的黑盒测试技术-因果图与决策表的测试方法及实际应用。)
三、实践项目3 (选自教材中第4章内容)
下图是一个使用信用卡在无人加油机上自助加油的程序状态转换图。假设需要设计最少数量的测试用例去覆盖该状态转换图的每一个状态转换,并假定每一个测试必须在初始
状态开始或者结束,并等待客户的操作。试设计该程序的测试用例。
插入信用卡(无效)/
/
取消或暂停/ 再见信息
加油开始的信息
按下等级按钮/ 开始计算加油信息
(解题要求:(1)分析该题目说明,确定属于哪一类的测试问题,并确定相应的测试技
术方法。(2)根据分析确定,进行测试的分析与设计。该测试问题能否解决,主要考察是否掌握了相应的黑盒测试技术-状态转换法的实际应用。)
软件测试(本科)课程
形成性考核册
中央广播电视大学工学院
使用说明
本形考册是中央广播电视大学软件工程(本科)专业软件测试课程形成性考核的依据,与《软件测试(本科)》教材(贺平 编著,中央电大出版社出版,2011,1)配套使用。
本课程3学分,共54学时,在一个学期内开设。本课程的特点为综合性强,基本理论知识及基本技术方法的覆盖面宽、课程基本涵盖了软件测试全貌,同时实践性也较强。学习本课程,不仅要求同学们正确理解、掌握软件测试的基本知识和基础理论,更要求能够运用这些知识与技术方法,分析所面对的软件测试的(工程)问题,结合软件工程、软件设计、软件编程的相关知识与技术,通过实践运用,学会对软件测试问题的分析、技术方法运用策略及过程,完成实际测试任务。
本课程的形成性考核成绩占课程总成绩的30%(终结性考试成绩占课程总成绩的70%,课程总成绩按百分制记分,60分为合格。
形成性考核按百分制计分,每次形成性考核任务也按照百分制计分。形考任务的形式为综合性的,共有5次,其中作业形式3次,主要检查课程学习情况,检查对课程内容理解与掌握的程度;实践是完成本课程学习目标的重要组成部分,实践环节培养同学们运用软件测试技术方法解决实际测试程序(案例)的重要环节,主要培养和考核大家对这方面的掌握程度及工程应用的能力,实践形式2次。考核成绩由地方电大教师根据学生完成情况进行评定。两种形成性方式考核,每次均占20%。
软件测试作业1
(本作业覆盖教材中的第1至2章的内容)
一、单项选择题(每小题3分,共45分) 1.软件测试目的可以是:( B )
A. 发现缺陷
B. 确认软件能够正常运行 C. 预防缺陷
D. 直接提高产品的售价 E. 减少整个产品开发周期时间 a) A, B b) A, B, C c) A, B, C 和 D d) 所有选项
2.基本的测试过程主要由下面哪些活动组成:( B )计划和控制(control)
B. 分析和设计 C. 实现和执行
D. 评估准出准则和测试报告 E. 测试结束活动 a) A, B 和 C b) A, B, C 和 D c) 除 E 以外所有选项 a) 所有选项
3.关于测试作用的描述,不正确的是:( A )
a) 测试无法显示软件潜在的缺陷; b) 测试能保证软件的缺陷和错误全部找到;
c) 测试只能证明软件存在错误而不能证明软件没有错误; d) 所有的软件测试都应追溯到用户需求。 4.可维护性测试属于:( )
a) 非功能测试
b) 功能测试 c) 结构测试 d) 确认和回归测试
5.有一个系统已经在市场上运行了,这种情况对系统进行修改,然后进行的测试:( )
a) 维护测试 b) 验收测试 c) 组件测试 d) 系统测试
6.下面哪些是一个好的测试的特点:( ) A. 每个开发活动都有相对应的测试行为 B. 每个测试级别都有其特有的测试目标
C. 对于每个测试级别,需要在相应的开发活动过程中进行相应的测试分析和设计D. 软件测试的工作重点应该集中在系统测试上 a) C,D b) A,B c) A,B,C d) A,B,C,D
7.目前大部分的软件错误来源于( )。
a) 程序错误; b) 分析和设计错误; c) 测试本身的错误; d) 需求错误。
8.传统的或面向对象的单元测试,需要的开发工作:( )
a) 只要开发测试stub; b) 只要开发测试driver;
c) 可能要同时开发一个stub和多个driver; d) 可能要同时开发一个driver和多个stub。 9.组件测试的用例设计主要参考的工作产品是:( )
a) 组件规格说明 b) 系统需求规格说明
c) 用户手册 d) 代码
10.关于软件质量保证和软件测试的描述,不正确的是:(
a) 软件质量保证和软件测试是软件质量工程的两个不同层面的工作; b) 在软件质量保证的活动中也有一些测试活动; c) 软件测试是保证软件质量的一个重要环节; d) 软件测试人员就是软件质量保证人员。 11.关于测试充分性的描述,正确的是:( )
a) 只有进行完全的测试才充分;
b) 在有限时间和资源条件下,找出所有的软件的错误,使软件趋于完美,是不可能的; c) 当继续测试没有发现新缺陷时; d) 当全部测试用例都执行完后。
12.描述黑盒测试和白盒测试不同点正确的说法是:( )
A. 黑盒测试在测试对象的表面进行 B. 白盒测试是在源代码已知的情况下进行
C. 黑盒测试用例是通过测试对象的使用说明或需求设计 D. 黑盒测试包括语句覆盖和分支覆盖方法 E. 白盒测试是通过因果图的分析方法进行的
a) A,B,C b) A,C c) A,B,C,D,E d) D,E
13.软件测试是软件开发过程中重要的质量保证活动,系统测试工作应该开始于:( )
a) 产生需求分析规约后; b) 产生需求分析规约前; c) 产生概要设计规约后; d) 产生概要设计规约前; e) 所有代码完成后。
14.通常验收测试应完成的内容,包含:明确验收项目,规定验收测试通过的
标准;决定验收测试组织机构,利用的资源;选定测试结果分析方法;( ),做出
验收结论,确任通过验收或不通过验收。
A. B.
指定验收测试计划并进行评审; B 设计验收测试所用的测试用例; 审查验收测试准备工作; C 执行验收测试与分析测试结果;
a) A b) A, B c) A,B,C d) A,B,C,D
15.性能测试梯度是:( )
A 一般性能测试; B稳定性测试;
C负载测试; D压力(或强度)测试; a) A b) A, B c) A,B,C d) A,B,C,D 二、简答题(共55分)
1.简要分析软件测试发展历程中的演变趋势及其内涵变化的重要特征。(8分)
2. 为何说软件缺陷的最大来源是软件需求规格说明?(8分)
3. 简述软件测试的几个典型模型、分析其共同点与各自特点。(8分)
4. 简述ISO 9126定义的软件质量体系结构分级组成特性,其中的6个主要质量特证及其子 特性的内涵。(8分)
5.简要归纳组件测试的主要思想、测试对象、测试内容、技术特征及测试过程。(8分)
6.简述软件生命周期中的测试概念,分析V模型的本质特征。(8分)
7. 总结软件测试的分类及其关系,测试种类和方法的适用领域和能解决的问题范围。(7分)
软件测试作业2
(本作业覆盖教材中的第3至4章的内容)
一、单项选择题(每小题2分,共30分)
1.一个参数的取值范围是正整数,那么这个参数的有效边界值的数目是:( A )
a) 一个 b) 二个 c) 三个 d) 四个
2.下面对静态测试和动态测试的区别描述正确的是:( A )
a) 静态测试并没有真正的运行软件,而动态测试需要运行软件 b) 静态测试需要借助于专门的测试工具,而动态测试不需要
c) 静态测试是由开发人员执行的,而动态测试是由专门的测试人员完成
d) 静态测试是主要是为了增加测试人员对软件的理解,而动态测试是为了发现缺陷 3.决策表测试法适用于具有以下特征的应用程序:( D )
A. if-then-else逻辑关系突出 B. 输入变量之间存在逻辑关系 C. 涉及输入变量子集的计算 D. 输入与输出之间存在因果关系
a) A b) A,B c) A,B,C d) A,B,C,D
4.等价类划分法是把程序的输入域划分为若干部分,然后从每个部分中选取( C ) 代表性数据当作测试用例。 a) 少数 b) 多数 c) 一个 d)二个
5.定义基于状态的测试用例,应考虑信息:( D )
A. 测试对象的初始状态(组件或系统) B. 测试对象的输入 C. 期望输出或期望行为 D. 期望的结束状态
a) A b) A, B c) A, B, C
d) A, B, C, D
6.对静态测试和动态测试的区别描述正确的是:( A )
e) 静态测试并没有真正的运行软件,而动态测试需要运行软件 f) 静态测试需要借助于专门的测试工具,而动态测试不需要
g) 静态测试是由开发人员执行的,而动态测试是由专门的测试人员完成
h) 静态测试是主要是为了增加测试人员对软件的理解,而动态测试是为了发现缺陷 7 . 多出口函数可能会发生( B )问题。
a) 产生逻辑错误 b) 降低可靠性 c) 产生内存泄漏 d) 降低运行性能
8. 技术评审的目的是:( D )
a) 保证软件在独立的模式下进行开发 b) 发现软件业务错误 c) 与项目管理无关
d) 确认软件符合预先定义的开发规范和标准 9. 走查主要包括以下哪些内容:( D )
A .检查代码和设计的一致性; B.标准的遵循和可读性; C.评审对象主要是软件代码; D.不安全、不明确和模糊的部分 a) 除A以外 b) 除D以外 c) 除A和D以外 d) 以上全部都是
10. 使用静态测试的接口分析一致性涉及:( C ) A. 各模块之间接口一致性;
B. 模块与外部数据库接口的一致性;
C. 形参与实参在类型、数量、顺序、维数,使用上的一致性; D. 全局变量和公共数据区在使用上的一致性。 a) A b) A、B c) A、B、C
d) A、B、C、D
11.函数覆盖是针对系统或一个子系统测试,它表示在该测试中,有哪些函数被测试到了,
其被测试到的( A )有多大,这些函数在系统所有函数中所占是多少。 a) 频率 b)数量 c) 次数 d) 用例次数
12.一个程序的控制流图如下图所示,根据圈复杂度的计算方法,该程序的复杂度为:( B )
a)2 b)3 c)4 d)5
13.对复杂性较大程序做到所有路径覆盖(测试所有可执行路径)是不可能的。根据独立
路径概念,某一程序的独立路径是:( B )
a) 指从程序入口道程序出口的多次执行中,每次至少是一个语句集是新的或未被重复的。 b) 若用流图来进行描述,独立路径就是在从入口进入流图,至少走过一个弧。 c) 若用流图来进行描述,独立路径就是在从入口进入流图,要走过所有的弧。 d)指从程序入口道程序出口的多次执行中,每次至少是所有语句集。
14.一般称简化循环意义下的路径覆盖为Z路径覆盖。这里所说对循环化简化是指:( C )a)限制循环次数
b)无论循环形式和实际执行循环体次数多少,只考虑循环一次
c)无论循环形式和实际执行循环体次数多少,只考虑循环一次和零次2种情况。 D)只考虑执行时进入循环体一次和跳过循环体。
15.针对嵌套循环,不能采用简单循环的测试办法。为减少测试次数,提出的测试方法中,正
确的是:( ABCD )
a) 测试从最内层循环开始,将其它循环设置为最大值,内层循环按简单循环测试方法进行; b) 对最内层循环使用简单循环,而使外层循环迭代参数(循环计数)最小,并为范围外或 排除的值增加其它测试;
c) 由外向内构造几个循环测试,其它外层循环为最小值。由内向外进行嵌套循环,每回退 一层后进行一次测试,本层循环所有外层循环仍取最小值,而由本层循环嵌套的循环取某些“典型”值;
d) 不断向内层向外层上升,直到所有循环测试完毕。
二、简答题(共40分)
1.简要总结静态测试的控制流分析技术及软件复杂度度量。(10分)
教材:P74-75-77
2.试总结和归纳基本的评审原则、评审目标、评审过程、评审类型。评审的组织、过程及 主要活动。(10分)
教材: P100评审原则 -103
3.归纳总结本章介绍的黑盒测试技术方法,分析黑盒测试技术的实质及要点,掌握黑盒测试技术主要测试方法的思路,比较各种黑盒测试技术方法及其适用领域,并说明如何应用这些技术进行测试用例设计。(10分)
教材P110 因果图 决策表 白盒测试的路径 语句覆盖
4.归纳总结本章介绍白盒测试逻辑覆盖规则,比较每种覆盖的特点,并分析其覆盖强度,在怎样的情况下采用何种覆盖方式?(10分)
教材 P136
三、设计题(共30分)
1. 试用等价类划分法与边界值分析法解决下列测试实际问题,并设计出测试用例。(10分)
某公司关于节日奖金计算方法描述如下:员工在公司工作时间超过3年,可得到相当于其月收入的50 %的奖金;在公司的工作年限超过5年,可得到相当于月收入的75 %的奖金;
工作时间超过8年,可得到相当于其月收入100 %的奖金。根据该奖金发放规则,请列出正确的有效等价类vEC和测试用例代表值;无效等价类iEC和测试用例代表值。
2.试用因果图与决策表测的方法,解决下列测试实际问题,并设计给出测试用例。(10分) 自动饮料售货机软件程序测试问题。一自动售货机的自动售货功能如下所述:若投入2元5角硬币,按下“绿茶”、“奶茶”、“红茶”按钮,相应的饮料就自动送出。若投入3元硬币,在送出饮料的同时退回5角硬币。试运用因果图法设计测试用例。
提示:(1)分析问题的文字说明,列出原因与结果。可设立中间状态:已投币;已按钮。
(2)根据原因和结果,可设计一个因果图。
(3)将因果图转换为决策表。表的每一列可作为确定测试用例的依据。
3.给出以下C程序段,试设计基本路径测试的测试用例。要求设计出的测试用例保证每一个基本独立路径至少要执行一次。(10分)
函数说明:当i_flag=0;返回i_conut+100
当i_flag=1;返回i_count*10 否则 返回 i_count*20 输入参数:int i_count int i_flag 输出参数:int i_return 程序代码:
1 int test (int i_count,int i_flag) 2 {
3 int i_temp = 0; 4 while (i_count > 0) 5 {
6 if (i_flag == 0) 7 {
8 i_temp = i_count +100; 9 break; 10 } 11 else 12 {
13 if (i_flag == 1) 14 {
15 i_temp = i_temp + 10; 16 } 17 else 18 {
19 i_temp = i_temp + 20; 20 } 21 }
22 i_count--;
23 }
24 return i_temp 25 }
提示:(1)画出程序控制流图(注意节点的标示);
(2)计算环形复杂度(圈数); (3)导出程序基本路径; (4)设计测试用例。
软件测试作业3
(本作业覆盖教材中的第5至6章的内容)
一、单项选择题(每小题3分,共45分)
1.软件自动化测试生存周期方法学反映和代表了自动化测试的结构化策略及方法论。应用它在设计自动化测试时可参照规范和有效模式,软件自动化测试生存周期方法学分为:自动化测试方式决策;( C );测试执行和管理;测试评审与评估。
A.自动化测试工具的获取; B.自动化测试的引入过程; C.测试计划制定与测试设计; D.测试用例设计与缺陷管理; a)A b)A,B c)A,B,C
d)A,B,C,D 教材 P-155
2.应用软件系统在客户端性能测试的目的是检测客户端应用的性能。测试的入口处是客户端,其测试内容主要包括:( C )
A 并发性能测试 B 疲劳强度测试 C大数据量测试 D速度测试
a) A b) A,B c) A,B,C d) A,B,C,D
3.测试人员(Tester)在软件配置管理中工作主要是:( A )
a) 根据配置管理计划和相关规定,提交测试配置项和测试基线; b) 建立配置管理系统; c) 提供测试的配置审计报告; d) 建立基线。 教材 P-210
4.测试管理工具可能包括的功能:( D ) A.管理软件需求; B.管理测试计划;
C.缺陷跟踪; D.测试过程中各类数据的统计和汇总
a) 除A以外 b) 除B以外
c) 除C和D以外 d) 以上全部
5.关于测试人员沟通能力的描述,不正确的是:( C )
a) 测试人员要和分析、设计很好的沟通;
b) 如果测试人员把自己发现缺陷作为一个新闻来传播,那么会给沟通带来麻烦; c) 测试人员不需要和代码开发人员很好的沟通; d) 测试人员和测试leader之间也应该具有好的沟通。
6.图形用户界面的测试(GUI testing)主要包括的内容:( D )
A.界面显示测试;B.界面功能测试;C.可用性测试;D.易用性测试。 a) A,B b) A,B,C c) C,D d) A,B,C,D
7.下列哪些可能属于缺陷属性:( C )
A.缺陷标识;B.缺陷发现者;C.缺陷类型;D.缺陷严重程度;E.缺陷优先级; F.缺陷状态。 a) A,B b) A,B,C c) C,D,E,F d) 全都是
8.测试管理工具可能包括的功能,有:( D ) A 管理软件需求; B 管理测试计划; C 缺陷跟踪;
D 测试过程中各类数据的统计和汇总。 请选择下列答案中正确的回答:( D ) a) 除A以外 b) 除B以外 c) 除C和D以外 d) 以上全部
9. 引入自动化测试工具时,属于次要考虑因素的是:( C )
a) 与测试对象进行交互的质量 b) 使用的脚本语言类型 c) 工具支持的平台
d) 厂商的支持和服务质量 教材P-190 10.测试计划主要由哪个角色负责制定:( D )
a)测试人员 b)项目经理 c)开发人员
d)测试经理 教材P-190
11. 测试经理的任务通常不包括:( C )
a)编写测试计划
b) 选择合适的测试策略和方法 c) 建立和维护测试环境 d)选择和引入合适的测试工具
12. 对于测试过程来说,哪些工作产品要纳入配置管理?( D )
a) 测试对象(The test object)、测试材料(the test material)和测试环境 b) 问题报告和测试材料 c) 测试对象
d) 测试对象和测试材料
13. 测试报告不包含的内容有:( D )
a) 测试时间、人员、产品、版本; b) 测试环境配置; c) 测试结果统计; d) 测试通过/失败的标准
14. 如没有做好配置管理工作,那么可能会导致:( B )
A 开发人员相互篡改各自编写的代码; B 集成工作难以开展;
C 问题分析和故障修正工作被复杂化; D 测试评估工作受阻。
在a)、b)、c)、d) 4个选项中选择正确的回答。 a) A、C b) B、D c) A、B、C d) A、B、C、D
15.( D )是将测试输入存储在独立的文件中,而不是存储在脚本中。脚本中存放控制信息。它的优点包括:脚本与数据分离,数据文件以适当的文件格式单独维护、测试设计者不必具备脚本技术或编程知识
a) 结构化脚本 b) 关键字驱动脚本 c) 共享式脚本
d) 数据驱动脚本 教材P*159
二、简答题(每题11分,共55分)
1.简要描述软件自动化测试生命周期方法学的意义和作用。(11分) 答:教材 P*155
生命周期的六部分 决策表 获取 过程 设计开发 管理 测试评估
2.简述自动化测试脚本的意义与作用,并对各种测试脚本进行分析和总结。(11分)
答: 教材P*159 特点 意义 自己组织归纳总结
3. 列出使用软件自动化测试的优势与实际好处,分析自动化测试可能带来的风险、不足和问题。(11分)
答:教材 P*161 答作用一段即可
4. 简述测试事件的管理,缺陷的管理(流程)、测试用例管理与测试配置管理。(11分)
答: 教材P*205 缺陷管理全过程 7项 教材P*208 测试用例管理 (1) (2)总共 教材P*210-P*211 三个重点 总结归纳即可
5.简述测试事件的管理,缺陷的管理(流程)、测试用例的管理。(11分)
答: 教材P*205 缺陷管理全过程 7项 教材P*208 测试用例管理 (1) (2)总共 教材P*210-P*211 三个重点 总结归纳即可
软件测试实践项目
1.结合教材第3、4章的应用实例(或自己在实践作业中的选题),在任务完成后,以“文档”的形式提交作业。该文档一般情形包括:被测试对象问题描述(或程序规格说明书、源程序代码等),测试分析设计(或过程性文字、图、表等),测试用例设计等内容。
2.各地电大教师根据不同阶段的要求和学生的实际完成情况等为学生做出评价。满分为100分。
一、 实践项目1 (选自教材中第3章内容)
给出以下C程序段,试设计基本路径测试的测试用例。要求设计出的测试用例保证每一个基本独立路径至少要执行一次。 函数说明:当i_flag=0;返回i_conut+100
当i_flag=1;返回i_count*10 否则 返回 i_count*20 输入参数:int i_count int i_flag 输出参数:int i_return 程序代码:
1 int test (int i_count,int i_flag) 2 {
3 int i_temp = 0; 4 while (i_count > 0) 5 {
6 if (i_flag == 0) 7 {
8 i_temp = i_count +100; 9 break; 10 } 11 else 12 {
13 if (i_flag == 1) 14 {
15 i_temp = i_temp + 10; 16 } 17 else 18 {
19 i_temp = i_temp + 20; 20 } 21 }
22 i_count--; 23 }
24 return i_temp 25 }
提示:(1)画出程序控制流图(注意节点的标示); (2)计算环形复杂度(圈数); (3)导出程序基本路径; (4)设计测试用例。
二、 实践项目2 (选自教材中第4章内容)
自动饮料售货机软件程序测试问题。一个自动售货机的自动售货功能如下所述:若投入2元5角硬币,按下“绿茶”、“奶茶”、“红茶”按钮,相应的饮料就自动送出。若投入3元硬币,在送出饮料的同时退回5角硬币。试设计该问题的测试用例。
(解题要求:(1)分析问题的说明,列出原因与结果。可设立中间状态:已投币,已按钮;(2)根据原因和结果,可设计一个因果图。(3)将因果图转换为决策表。表的每一列可作为确定测试用例的依据。该测试问题能否解决,主要考察是否掌握了相应的黑盒测试技术-因果图与决策表的测试方法及实际应用。)
三、实践项目3 (选自教材中第4章内容)
下图是一个使用信用卡在无人加油机上自助加油的程序状态转换图。假设需要设计最少数量的测试用例去覆盖该状态转换图的每一个状态转换,并假定每一个测试必须在初始
状态开始或者结束,并等待客户的操作。试设计该程序的测试用例。
插入信用卡(无效)/
/
取消或暂停/ 再见信息
加油开始的信息
按下等级按钮/ 开始计算加油信息
(解题要求:(1)分析该题目说明,确定属于哪一类的测试问题,并确定相应的测试技
术方法。(2)根据分析确定,进行测试的分析与设计。该测试问题能否解决,主要考察是否掌握了相应的黑盒测试技术-状态转换法的实际应用。)