软件测试综合笔试题目及参考答案
一、 测试的种类很多,比如:
1、 代码、函数级测试
2、 模块、组件级测试
3、 系统测试
请说出这些测试最好由那些人员完成,测试的是什么?
二、 设计测试用例时应该考虑哪些方面,即不同的测试用例针对那些方面进行测试?
三、 如果测试程序向打印机输送打印内容,应该选用那些破坏性测试用例。
四、 在 windows 下保存一个文本文件时会弹出保存对话框,如果为文件名建立测试用例,
等价类应该怎样划分?
五、 假设有一个文本框要求输入 10 个字符的邮政编码,对于该文本框应该怎样划分等价
类?
六、 有一个软件产品,功能是输入 3 个数字代表三角形的三个边,看是否能判断出是什么
三角形,请设计测试用例并标识出该用例的测试目的。
七、 在 SQLSERVER 查询分析器中选择想要使用的数据库,有哪两种方法?
八、 请指出下列子句在 SELECT 语句中所起的作用。
语句 作用
SELECT
INTO
FROM
WHERE
GROUP BY
HAVING
ORDER BY
参考答案
一、 答:
代码、函数级测试一般由白盒测试人员完成,他们针对每段代码或函数进行正确性检验,检
查其是否正确的实现了规定的功能。
模块、组件级测试主要依据是程序结构设计测试模块间的集成和调用关系,一般由测试人员
完成。
系统测试在于模块测试与单元测试的基础上进行测试。了解系统功能与性能,根据测试用例
进行全面的测试。
二、答:
设计测试用例时需要注意的是,除了对整体流程及功能注意外,还要注意强度测试、性能测
试、压力测试、边界值测试、稳定性测试、安全性测试等多方面。(测试用例需要考虑的四
个基本要素是输入、输出、操作和测试环境;另外,测试用例需要考虑的是测试类型(功能、
性能、安全……),这部分可以参照 TP 做答。此外,还需要考虑用例的重要性和优先级)
三、 答:
1. 打印超过允许一次打印的上限的数量;
2. 在打印过程中断电、重启等破坏性操作。
3. 打印过程中墨盒为空。如果是彩色打印机,要分别测试单色墨盒为空和组合的情况。
4. 打印过程中没有进纸。
四、 答
1. 单字节,如 A;
2. 双字节, AA、我我;
3. 特殊字符 /’。’;、=-等;
4. 保留字,如 com;
5. 文件格式为 8.3 格式的;
6. 文件名格式为非 8.3 格式的;
7. /,\,*等九个特殊字符。
五、答:
1. 特殊字符,如 10 个*或¥;
2. 英文字母,如 ABCDefghik;
3. 小于十个字符,如 123;
4. 大于十个字符,如 11111111111;
5. 数字和其他混合,如 123AAAAAAA;
6. 空字符;
7. 保留字符
六、本题目主要考察设置边界值:(供参考)
序号 第一边 第二边 第三边 预测结果 实际结果 测试目的
7
1
9
7
11
0
100
1
8
1
9
8
22
99
-1
1
普通
等边
等腰
不能构成
不能构成
不能构成
不能构成
不能构成
三边不等
三边等
两边等
两边和=三
空值
零
负数
特殊符号
1
2
3
4
5
6
7
8
6
1
8
15
空
66
88
*
七、 答:
1. 用命令行: use 数据库名称
2. 在工具栏直接选择要连接数据库
八、 答:
SELECT 选择
INTO 插入
FROM 从某个表
WHERE 条件 在什么时候 WHERE 子句设置查询条件,过滤掉不需要的数据行。
GROUP BY 分类分组
HAVING 在分类的基础上定位查询条件
ORDER BY 查询结果排序
一、判断题(第 1、3 题每题 2 分,其他题每题 1 分,12 分,正确的√,错误的╳)
1.软件测试的目的是尽可能多的找出软件的缺陷。()
这个观点指出测试是以查找错误为中心,而不是为了演示软件的正确功能。但是只从字面意
思理解可能会产生误导,认为发现错误是唯一目的。软件是否符合用户需求是判断软件质量
的重要标准,检验软件的可靠性也是软件测试目的之一。
X
2.Beta 测试是项目验收测试的一种,主要发现项目中存在的重要缺陷。()
Beat 测试和验收测试是两种不同的测试。验收测试的目的是为了以发现“未实现的需求
“为目的,以评估“适合使用“为目标,该类测试的不是以发现缺陷为主要目的。beta 测
试是一模拟真实的使用环境从而发现缺陷的一种测试。所以两者之间的是非包容关系。验收
针对的项目;Alpha, Beta 针对的是产品。最好不要出这样的题。
X
3.验收测试是由最终用户来实施的。()
上面说到了验收测试的目的和目标,所以验收测试也可是是软件生产的企业内部人员来实
施。例如产品经理。当软件以项目的形式出现,那么验收测试由最终用户来实施的情况是比
较长见的。但是对于产品形式的软件,生产企业内部的验收测试会更多。
X
4.代码评审是检查源代码是否达到模块设计的要求。()
代码审查是一种静态技术,从这个意义上说代码复查是需要和其他的一些动态测试技术配合
才能检查代码是否符合设计的要求
X
5.自底向上集成需要测试员编写驱动程序。()
这道题目大家看下 top-down 和 down-top 的集成测试示意图就能得出明确的答案。这里需
要了解的是什么是驱动测试程序,什么是桩程序。如果集成组件数量众多,多关系层次,那
么不论是什么类型的集成测试。驱动程序和桩程序都是需要开发的。
√
6.负载测试是验证要检验的系统的能力最高能达到什么程度。()
关于负载测试和压力测试在论坛中的帖子中有详细的解释,大家可以去看一下就能得出正确
的答案
X
7.测试人员要坚持原则,缺陷未修复完坚决不予通过。()
测试是否通过,不是以缺陷是否修复完毕为标准,而是以测试需求和既定的完成标准为标
准。。
X
8.代码评审员一般由测试员担任。()
如果测试员有这个水平,那么当然是可以参加的。不过大多数的企业不会让普通的测试人员
参与代码的评审。
X
9.我们可以人为的使得软件不存在配置问题。()
首先大家先搞清楚什么是配置管理什么是软件配置,从这道题目中看不出出题人想问的是关
键工程中的配置管理还是单纯的软件配置。但是可以肯定的是不论是何种情况,答案均是否
定的。
X
10.集成测试计划在需求分析阶段末提交。()
集成测试计划在开发人员完成软件集成计划之后就可以开始进行了。所以在需求分析阶段之
后提交是不现实的事情,应该在软件的设计阶段后,编码前。
X
二、不定项选择题(每题 2 分,10 分)
1.软件验收测试的基本合格通过准则是:()
A.
软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。
B.
所有测试项没有残余一级、二级 BUG
C.
立项审批表、需求分析文档、设计文档和编码实现一致。
D.
验收测试工件齐全。
回答这道题,你必须是这家企业的员工。前面说到了验收测试的目的和目标,一个是需求必
须实现,二是证明软件是适合使用的。这样能满足这两个通用标准就可以了。当然有些软件
企业会对验收测试标准做一些调整。C 是不对的因为立项时的需求和最终的需求很大可能是
不完全一致的。 A
2.软件测试计划评审会需要哪些人员参加?()
A.项目经理
B.SQA 负责人
C.配置负责人
D.测试组
上面的 4 种角色都需要参与
ABCD
3.下列关于 alpha 测试的描述中正确的是:()
A.alpha 测试需要用户代表参加
B.alpha 测试不需要用户代表参加
C.alpha 测试是系统测试的一种
D.alpha 测试是验收测试的一种
首先大家需要知道 alpha 测试是系统级别的测试,该测试是在一个受控的环境中进行的。用
户需要直接参与进来。所以答案应该是 AD
4.测试设计员的职责有:()
A.制定测试计划
B.设计测试用例
C.设计测试过程、脚本
D.评估测试活动
合理的答案的是 BC,同时要看软件企业对该类人员的职责是如何定义。
5.软件实施活动的进入准则是:()
A.需求工件已经被基线化
B.详细设计工件已经被基线化
C.构架工件已经被基线化
D.项目阶段成果已经被基线化
先要了解一下什么是基线。这个是软件配置管理中一个重要的概念。工作产品必须纳入到一
定的基线里面。所以选择 ABC 是必定的,至于是否选择 D 要看这家企业自身的标准了
三、填空题(每空 1 分,24 分)
1.软件验收测试包括___、___、____三种类型。
软件验收测试包括正式验收测试、alpha 测试、beta 测试三种测试。
2.系统测试的策略有____________________________等 15 种方法。(该题
15 个空)
系统测试的策略有很多种的,有性能测试、负载测试、强度测试、易用性测试、安全测试、
配置测试、安装测试、文档测试、故障恢复测试、用户界面测试、恢复测试、分布测试、可
用性测试。
3.设计系统测试计划需要参考的项目文档有___、___和____。
设计系统测试计划需要参考的项目文档有软件测试计划、软件需求工件、和迭代计划。
4.通过画因果图来写测试用例的步骤为___、___、___、___及把因果图转换为状态图共五
个步骤。
利用因果图生成测试用例的基本步骤是:
§ 分析软件规格说明描述中,哪些是原因(即输入条件或输入条件的等价类),哪些是结
果(即输出条件),并给每个原因和结果赋予一个标识符。
§ 分析软件规格说明描述中的语义,找出原因与结果之间,原因与原因之间对应的是什么
关系? 根据这些关系,画出因果图。
§ 由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现。
为表明这些特殊情况,在因果图上用一些记号标明约束或限制条件。 § 把因果图转换成判
定表。
§ 把判定表的每一列拿出来作为依据,设计测试用例。
1.一个测试工程师应具备那些素质和技能?
我认为应该具备如下素质和技能:
掌握基本的测试基础理论
本着找出软件存在的问题的态度进行测试,即客观吧,不要以挑刺形象出现
可熟练阅读需求规格说明书等文档
以用户的观点看待问题
有着强烈的质量意识
细心和责任心
良好的有效的沟通方式(与开发人员及客户)
具有以往的测试经验