资源描述
软件测试技术习题
第一章:软件测试的基本概念
1、 测试用例的要素有哪些:
答:要素:测试目标、测试环境、输入数据、步骤 、预期结果
2、 利用测试用例模板,设计测试iGoogle系统登录功能的一个用例。
项目/软件
iGoogle系统
程序版本
1.025
功能模块名
Login
编制人
xxx
用例编号
Login1
编制时间
20120602
相关用例
无
功能特性
登录名和密码验证
测试目的
验证是否输入合法的信息,允许合法登录,阻止非法登录
预置条件
无
特殊说明
数据库访问权限
参考信息
需求说明中关于“登录”的说明
测试数据
用户名=wxq,密码=1
操作步骤
操作描述
数据
期望结果
实际结果
测试状态
1
输入用户名,按登录
用户名=wxq,密码为空
显示警告信息“请输入用户名和密码”
2
输入密码,按登录
用户名为空,密码=1
显示警告信息“请输入用户名”
3
输入用户名和密码,按登录
用户名=wwww,密码=1
显示警告信息“不存在该用户”
4
输入用户名和密码,按登录
用户名=wxq,密码=12
显示“密码错误”
测试人员
开发人员
项目负责人
第二章 :软件测试原理
1. 阐述测试的七大原则
1) 所有的测试都应追溯到用户需求。2)应当把“尽早测试和不断地进行软件测试”作为软件测试的座右铭。3)Pareto原则应用于软件测试。4)测试应从“小规模”开始,逐步转向“大规模”。5)穷举测试是不可能的。6)为了达到最佳效果,应该由独立的第三方来构造测试。7)不充分的测试是不负责任的,过分的测试是一种资源的浪费,同样也是一种不负责任的表现。
2. 良好的单元测试是否可以替代集成测试+
不可以。因为单元测试主要从单元内部来测试,而集成测试主要考查单元的外部接口。
3. 自动化测试工具可以让繁重的手工劳动变得轻松,那么,我们还有必要做手工测试吗?P174
有。因为手工测试有其不可替代的地方,因为人是具有强智判断能力的动物,而工具是相对机械,缺乏思维能力的东西。手工测试不可替代的地方至少包括以下几点。1)测试用例的设计。2)界面和用户体验测试 3)正确性检查
4. 只要学会某种时下流行的自动化测试工具的使用,就可以轻松搞定测试工作了吗?
5. 我们该如何应用各种测试模型
6. 从测试阶段和工作活动两方面简单阐述下软件测试的流程。
软件测试过程可分成以下步骤:单元测试、集成测试、确认测试和系统测试,最后进行验收测试。还有测试计划中的需求评审和设计评审。在单元测试和集成测试中进行测试脚本开发。在系统测试和验收测试中进行测试结果分析和报告。
7. 简单阐述W模型的优缺点以及H模型的特点
W模型是V模型自然而然的发展。它强调:测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求、功能和设计同样要测试。可以说,测试与开发是同步进行的,从而有利于尽早地发现问题。因此,相对于V模型,W模型更科学。W模型也是有局限性的。W模型和V模型都把软件的开发视为需求、设计、编码等一系列串行的活动。同样的,软件开发和测试保持一种线性的前后关系,需要有严格的指令表示上一阶段完全结束,才可正式开始下一阶段。这样就无法支持迭代、自发性以及变更调整。
H模型的特点:1.软件测试不仅仅指测试的执行,还包括很多其他活动;2.软件测试是一个独立的流程,贯穿产品整个生命周期,与其他流程并发地执行;3.软件测试要尽早准备,尽早执行;4.软件测试是根据被测物的不同而分层次进行的。不同层次的测试活动可以是按照某个次序先后进行的,但也可能是反复的。
a
c
第三章 :白盒测试技术
2
1
4
3
6
8
7
5
c
b
e
d
1、根据右图给出的程序流程图,完成以下要求:
(1)画出相应的控制流图
(2)计算环形复杂度
(3)找出程序的独立路径集合
解(1)控制流图如右图:
其中①A<5 ②B=5
③X=X/A ④A=2
⑤X>2 ⑥X=X+1
(2) V(G)= 5
(3)独立路径集合
路径1:1→3→4→7→8
路径2:1→2→4→7→8
路径3:1→2→4→5→7→8 路径4:1→2→4→5→6→8 路径5:1→2→3→4→7→8
第四章 :黑盒测试技术
下面是对某IC卡加油机应用系统的基本流和备选流的描述。
基本流A:
要求使用场景法设计测试用例,指出场景涉及到的基本流和备选流,基本流用字母A表示,备选流用题干中描述的相应字母表示,并填充下面的测试用例表。
测试用例表
测试用例ID
场景
账号
黑名单
输入量
账面金额
加油机油量
预期结果
C01
场景1
100814301
不属于
100
100
1000
加入100油量
C02
场景2
100814302
属于
无关
无关
无关
不加油,吞卡
C03
场景3
100814303
不属于
10000
1000
1000
不加油,提示重新输入油量或者直接退卡
C04
场景4
100814304
不属于
1000
100
1000
不加油,提示现金不足,重新输入油量或直接退卡
C05
场景5
100814305
不属于
100
100
1000
不加油,加油卡无效,退卡
第五章 :面向对象软件的测试
1. 基于服务的类测试技术的测试流程是什么?
1)绘制服务的控制流图 2)确定基本路径集 3)生成测试用例
2.基于状态的类测试技术的测试流程是什么?
1)扫描源程序并得出执行分析表 2)确定对象状态 3)构造状态转移 4)构造测试消息序列 5)生成测试用例
3.测试驱动的实现方式有哪些?
1)利用mian函数 2)嵌入静态方法 3)设计独立测试类
第六章:单元测试
1.用自动测试工具生成测试用例有哪些不足?
使用自动测试工具所生成的测试用例常常不能对被测单元进行有效的覆盖,而且大多数自动测试工具是依据被测代码生成测试用例的,如果编码或规格存在错误,则生成的测试代码也会存在问题,所以对自动生成的测试代码必须借助人工检视,必须时还要引入手工测试。
2. 单元测试有哪些覆盖率标识?
1)语句覆盖。2)判断覆盖。3)条件覆盖。4)路径覆盖。5)函数覆盖 6)Z路径覆盖 7)ESTCA覆盖 8)线形代码序列与跳转(LCSAJ)覆盖
3.不做单元测试对软件质量有什么影响?
单元测试的目标是检查每个模块是否正确地实现了设计说明中的功能、性能、借口和其他设备设计约束要求,确保每个单元都被正确的编码。但单元测试的目标不仅是测试代码的功能性,还需确保代码在结构上可靠、健全,并且能够对各种条件作出正确响应。如果不对系统中的代码进行适当的测试,在代码中的弱点就有可能成为黑客攻击的对象,从而导致安全性风险以及性能问题。
4. 单元测试是针对代码的测试吗?为什么?
单元测试的内容是对单元的功能、性能、接口、局部数据结构、独立路径、错误处理、边界条件和内存使用情况进行测试。
5. 针对数据结构中的链表删除模块,写出一个包括驱动模块与桩模块的单元测试代码。
第七章:集成测试与系统测试
1.集成策略的选取原则及各优缺点
1)大爆炸集成,优:可以迅速完成集成测试;需要的桩和桩模块非常少;需要的用例是最少的,操作简单;资源利用率高。缺点:一次试运行成功的可能性不大;问题定位和修改比较困难;借口间的交互关系只被测试到很少的一部分;风险高。
2)自顶向下集成:优点:较早地验证了主要控制和判断点;按深度可以首先实现和验证一个完整的软件功能;功能较早证实。只需要一个驱动。减少费用。支持鼓掌隔离。缺点:桩的开发量大,底层验证被推迟,底层组件测试不充分。
3)自底向上集成 优点。。。缺点。。。。P130 4)三明治集成
2.性能测试的主要类别及重要指标 P134
1)功能性测试 2)可靠性测试 3)易用性测试 4)性能测试 5)维护性测试 6)可移植性测试
3. 性能测试中的加压方式
压力测试是持续不断地给被测系统增加压力,直到被测系统被压垮,从而确定系统能承受的最大压力。
第九章 :软件测试过程所需的技能
1. 测试过程中常用的有哪些测试文档?
1)测试计划 2)测试设计说明书 3)测试用例规格说明书 4)测试过程规格说明书 5)测试项目移交报告 6)测试日志 7)测试突发事件报告 8)测试总结报告
2.测试计划中的几个问题
3. 测试用例设计的基本原则
4.软件测试评估的方法
5. 软件缺陷的属性
6. 典型的缺陷状态转换流程图
第十章:软件测试自动化
1.请比较手工测试和自动测试的优缺点。
自动测试和手工测试比较起来:1)提高了测试执行速度,节省了时间。2)提高了测试效率。3)提高了准确度和精确度。4)更好地利用资源 5)模拟测试条件。
2. 自动测试周期包含哪些阶段?
1)自动测试需求——产品需求 2)自动测试策划——产品策划 3)自动测试设计——产品设计 4)自动测试编码——产品编码
3.自动测试方案有哪些?
1)确定自动化的对象和范围。2)选择自动化测试的方案和脚本的编写方法。3)
4.在一个小公司开发一个中小型项目,开发周期很短的情况下我们应该采用什么自动测试方案?
青
展开阅读全文