软件工程-软件测试
Posted yszd
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件工程-软件测试相关的知识,希望对你有一定的参考价值。
1.测试特点
大量统计资料表明,目前软件测试所花费用已超过软件开发费用的30%。
目的:在软件投入生产运行之前,尽可能地发现软件(主要是程序)中的错误和缺陷。
一次成功的测试是发现至今为止尚未发现的错误。
高效的测试是指用少量的测试用例,发现尽可能多的错误。
2.测试分类
阶段划分:单元测试,集成测试,确认测试,系统测试。
方法划分:白盒测试,黑盒测试。
产品划分:α测试和β测试。
注意:在实际应用中,一旦纠正了程序中的错误,还应该部分或全部进行重新测试,这种测试称为回归测试。
3.V模型
V模型是一个以测试为驱动的开发模型,该模型强调开发过程中测试贯穿始终。
4.单元测试
模块的内聚程度高可以简化单元测试过程。测试的方案也将明显减少,模块内的错误也更容易预测和发现。
5.集成测试
非渐增式:讲究一步到位,诊断定位和改正错误困难,只适合一些非常小的软件。
渐增式:
自顶向下:先测试上层模块,再测试下层模块,不必编写驱动模块。
自底向上:先测试下层模块,再测试上层模块,不必编写桩(测试)模块。
6.白盒测试-覆盖标准
1.语句覆盖:每个语句至少执行一次
2.判定覆盖:不仅每个语句至少执行一次,而且每个判定的每种可能都至少执行一次
3.条件覆盖:不仅每个语句至少执行一次,而且判定表达式中的每个条件都取得各种可能的结果
4.判定/条件覆盖:同时满足判定覆盖和条件覆盖
5.条件组合覆盖:使每个判定表达式中的条件结果的所有组合至少出现一次
6.路径覆盖:使程序中所有可能的路径都至少经过一次(如果程序中有环路,,则要求每条环路至少经过一次)
注意:满足条件组合覆盖的测试用例,也一定满足判定/条件覆盖。然而,条件覆盖还不能保证程序中所有可能的路径都至少经过一次
注意:条件覆盖不一定包含判定覆盖,判定覆盖也不一定包含条件覆盖。
注意:路径覆盖并未考虑判定中的条件结果的组合,并不能代替条件覆盖和条件组合覆盖
以上是关于软件工程-软件测试的主要内容,如果未能解决你的问题,请参考以下文章
软件测试常见概念(软件生命周期软件开发模型软件质量模型软件缺陷管理软件测试概述软件测试分类软件测试与软件开发软件测试原则黑盒测试方法白盒测试方法性能测试)