软件测试复习
##填空(15分)和简答(40分,8个)
1.bug报告单包括:
- 基本信息
- 主要属性
- 主要描述
2.黑白盒测试技术的概念,他们包括的方法有哪些
黑盒测试
概念:
只检查程序功能是够按照规格说明书的规定正常使用
方法:
- 等价类划分法
- 边界值分析法
- 判定表法
- 因果图法
- 场景法
- 错误推断法
- 功能图法
- 正交表法
白盒测试
概念:
按照程序内部逻辑测试程序,检查程序中的每条通路是否按预定的要求正常工作。
方法:
- 静态白盒法
- 侵入式法
- 逻辑覆盖法
- 基本路径法
- 循环测试法
3.逻辑覆盖法设计测试用例的类型
- 语句覆盖
- 判定覆盖
- 条件覆盖
- 判定/条件覆盖
- 条件组合覆盖
- 路径覆盖
4.软件测试流程
- 测试计划阶段
- 测试设计阶段
- 测试实现阶段
- 测试执行阶段
5.因果图,边界值,等价类,判定表的概念以及步骤
因果图
概念
利用图解法分析输入的各种组合情况,从而设计测试用例的方法。
步骤
- 列出原因和结果
- 画出因果图
- 施加相应约束
- 将因果图转换为判定表
- 设计测试用例
边界值
概念
对输入或输出的边界值进行测试
步骤
- 确定边界情况
- 选取测试数据
- 导出测试用例
等价类
概念
把所有有可能的输入数据划分成如果部分,然后从每一个子集中选取少数具有代表性的数据作为测试用例。
步骤
- 划分等价类
- 建立等价类表,等价类进行编号
- 通过等价类导出测试用例
判定表
概念
根据需求描述建立判定表后,导出测试用例的方法
步骤
- 列出所有条件桩
- 确定规则个数
- 填入条件桩
- 填入动作项
- 简化判定表
6.自动化测试的局限性
- 不能取代手工测试
- 手工测试比自动测试发现的缺陷更多
- 由于自动测试比手动测试更脆弱,所以维护会收到限制,从而制约软件开发
- 工具本身并无想象力
- 自动化测试对测试人员要求比较高
7.自动化测试的概念,自动化测试技术有哪些:录制脚本,设计场景,分析图表
概念
让计算机代替测试人员进行软件测试的技术,希望能够通过自动化测试工具或者其他手段,按照测试工程师的预定计划进行自动的测试。
自动化测试技术
- 录制脚本
- 设计场景
- 分析图表
8.软件生命周期
软件产品从形成概念开始,经过开发、测试、使用和维护直到最后退出使用的全过程
生命周期
- 问题定义
- 分析研究
- 需求分析
- 软件设计
- 编码
- 测试
- 维护
9.软件测试的概念,目的和对象
概念:
对程序进行操作,以发现错误
目的:
- 发现系统错误
- 验证系统是否满足要求
- 为产品放行提供依据
- 改进开发流程
对象:
- 软件概要设计
- 软件源代码
- 软件详细设计
- 可运行程序
- 软件运行环境
10.测试用例的概念及6要素
概念
在实时测试时,向被测系统提供==输入数据==,==操作==以及==预期结果==的一个集合
6要素
- 用例编号
- 用例级别
- 用例标题
- 预置条件
- 操作步骤
- 预期结果
11.软件测试过程
- 单元测试 Unit Testing UT
- 最小可测单元
- 集成测试 Integrating Testing IT
- 各个元件==单元之间的接口==以及==集成后的功能==是否正确
- 系统测试 System Testing ST
- 对已集成好的软件系统进行彻底的测试,验证功能和性能
- 对象:硬件、外设、数据等
- 验收测试 Acceptence Testing AT
- 也称交付测试,以用户为主,开发、实施、质保人员共同参与的测试
- 回归测试 Regression Testing (次要)
- 修改了旧代码后,重新进行测试
12.系统测试类型有哪些
- 功能测试
- 性能测试
- 压力测试
- 安全性测试
- 兼容性测试
- 安装/卸载测试
- GUI测试
- 恢复性测试
- 文档测试
13.什么是bug,bug产生的原因有哪些
缺陷定义
产品内部:软件开发或维护过程中存在的错误、毛病等各种问题
产品外部:系统所需要实现的某种功能的实效或违背
产生原因
- 软件未达到产品说明中已标注的功能
- 软件出现了产品说明中指明不会出现的错误
- 功能超出了产品说明书中的范围
- 软件测试人员以为软件难以理解,不易使用,运行速度慢,或者最终用户认为软件使用效果不好。
14.什么是质量,质量的评价指标有哪些
软件的一些质量特性的组合,反映了软件满足用户需求的程度。
评价指标
- 软件需求
- 软件结构
- 友好的用户界面
- 各阶段文档齐全、齐全、便于配置管理。
##设计题(2个,15分1个) ==1.测试用例设计题:== 黑盒测试:ATM机设计测试用例,nexedate设计测试用例; *白盒测试:逻辑覆盖法和基本路径法的例子;
==2.对一个软件进行系统测试:需求分析,看有哪些需求:功能,性能,兼容性,压力,图形用户界面等等;==