导图社区 软件测试
(1)软件测试是为了发现错误而执行程序的过程 (2)一个好的测试用例是能够发现至今尚未发现的错误 (3)一个成功的测试是发现了至今尚未发现的错误的测试
一篇关于数据结构思维导图,数据结构的基本概念、算法与算法评价等。希望对你有所帮助!
这是一篇关于运算符和表达式思维导图,包含C语言运算符、基本算数运算、逻辑运算、自增自减运算等。感兴趣的小伙伴可以关注点赞收藏哦~~
这是一篇关于数据的表现形式及其运算的思维导图,数据的表现形式和运算方式是计算机科学中的重要概念,它们是计算机进行数据处理和计算的基础。
社区模板帮助中心,点此进入>>
计算机操作系统思维导图
简单介绍MYSQL数据库软件的基本命令
计算机基础知识
.net学习总结
python基础知识点简单总结
序列类型的方法
管理信息系统
Python3.0入门知识思维导图
java 从入门到精通(第四版本)
软考架构设计师
软件测试
定义
(1)软件测试是为了发现错误而执行程序的过程
(2)一个好的测试用例是能够发现至今尚未发现的错误
(3)一个成功的测试是发现了至今尚未发现的错误的测试
目标
(1)好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案
(2)成功的测试是发现了至今为止尚未发现的错误的测试
(3)根本目标是尽可能多地发现并排除软件中潜在的错误,最终把一个高质量的软件系统交给用户使用
分类
1.静态测试
静态测试就是静态分析,是指被测程序不在机器上运行
(1)人工测试
(2)计算机辅助静态分析
2.动态测试
动态测试是指通过运行程序发现错误
(1)黑盒测试
(2)白盒测试
方法
1.黑盒测试
黑盒测试,也称功能测试或数据驱动测试
根据需求规格说明书,检查程序是否满足功能要求
1.等价类划分
(1)有效等价类
(2)无效等价类
2.边界值分析
3.错误推断
4.因果图法
2.白盒测试
白盒测试,也称结构测试或逻辑驱动测试
要求对程序的结构特性做到一定程度的覆盖
1.逻辑覆盖
(1)语句覆盖
程序的每条可执行语句至少执行一次
(2)判定覆盖
不仅每条语句至少执行一次,而且每个判定表达式至少获得一次“真”和“假”
(3)条件覆盖
不仅每条语句至少执行一次,而且使得判定表达式中的每个条件都获得各种可能的结果
(4)判定条件覆盖
既满足判定覆盖,又满足条件覆盖
(5)条件组合覆盖
每个判定表达式中的条件的各种可能组合都至少出现一次
(6)路径覆盖
覆盖程序中所有可能的执行路径
2.循环覆盖
3.基本路径测试
步骤
单元测试(模块测试)
1.任务
(1)模块接口测试
(2)模块局部数据结构测试
(3)模块出错处理通路测试
(4)模块中重要的执行路径测试
(5)模块边界条件测试
2.方法
在单元测试时,需要为被测模块设计驱动模块和桩模块
集成测试(组装测试)
渐增式测试
测试一个增加一个,边组装边测试
1.自顶向下集成
(1)深度优先
(2)宽度优先
2.自底向上集成
3.两种集成策略的比较
(1)自顶向下集成
优点
①不需要测试驱动程序
②能够在测试阶段的早起实现并验证系统的主要功能
③能在早期发现上层模块的接口错误
缺点
①桩模块不可能提供完整的信息,可能会遇到与桩模块相联系的测试困难
②底层关键模块中的错误发现较晚
③在早期不能充分展开人力
(2)自底向上集成
①能较早发现底层关键模块的错误
②容易设计测试用例
③早期可以并行工作
①系统总体功能最后才能看到
②上层模块的错误发现的晚
非渐增测试
回归测试
重新执行已经做过的测试的某个子集,以保证上述这些变化没有带来非预期的副作用
确认测试(有效性测试、验收测试)
通常使用黑盒测试法
Alpha测试
由用户在开发者的场所进行,并且在开发者对用户”指导“下进行
Beta测试
开发者通常不在现场
系统测试
系统测试是将经过单元测试、集成测试、确认测试以后的软件,作为计算机系统中的一个组成部分
调试
调试是在测试发现错误之后排除错误的过程。
目的
调试的目的是为了解决存在的错误,即对错误定位、分析并找出原因改正错误,因此调试也称为纠错
技术
1.简单的调试技术
2.消去原因法
软件可靠性
基本概念
程序在给定的时间间隔内,按照需求规格说明书的规定成功地运行的概率
软件可用性
程序在给定的时间点,按照需求规格说明书的规定成功地运行的概率