1 / 139
文档名称:

软件工程7(西南交通大学软件工程课件).ppt

格式:ppt   大小:927KB   页数:139页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

软件工程7(西南交通大学软件工程课件).ppt

上传人:胜利的喜悦 2022/6/16 文件大小:927 KB

下载得到文件列表

软件工程7(西南交通大学软件工程课件).ppt

文档介绍

文档介绍:第7章:实现
编码和测试统称为实现。
编码:把软件设计结果翻译成程序。
测试:检测程序并改正错误的过程。
计算机程序设计语言基本上可以分为两大类:
1. 汇编语言;
2. 高级语言。
编码
选接库:.lib
头文件:,、。
有关测试的一些规则:
(1)测试是为了发现程序中的错误而执行程序的过程;
(2)好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;
(3)成功的测试是发现了至今为止尚未发现的错误的测试。
软件测试的目标
软件测试基础
软件测试准则
1)所有测试都应该能追溯到用户需求;
2)应该远在测试前就制定出测试计划;
3)把Pareto原理应用到软件测试中;
4)应该从“小规模”测试开始,并逐步进行“大规模”测试;
5)穷举测试是不可能的;
穷尽测试:包含所有可能情况的测试称为穷尽测试。
程序main()
a2
a1
a3
b
输入
输出
a1、a2、a3 :
Integer 16bits
输入数据的穷尽测试组合:
216×216 × 216 = 248 ≈ 3 × 1014
6)为了达到最佳测试效果,应该由独立的第三方从事测试工作。
黑盒测试:
如果已经知道软件应该具有的功能,可以通过测试来检验是否每个功能都能正常使用,这种测试称黑盒测试。也称功能测试。
测试方法
白盒测试:
也称结构测试。
如果知道软件内部工作过程,可以通过测试来检验软件内部动作是否按照规格说明书的规定正常进行,这种测试称为白盒测试。

模块测试又称单元测试,它把每个模块作为单独的实体来测试。

子系统测试是把经过单元测试的模块放在一起形成一个子系统来测试。
软件测试的步骤

系统测试是把经过测试的子系统装配成一个完整的系统来测试。

验收测试把软件系统作为单一的实体进行测试(利用用户的实际数据测试)。

平行运行是同时运行新开发出来的系统和将被它取代的旧系统,以便比较新旧两个系统的处理结果。
测试阶段的信息流
测试
评价
调试
可靠性模型
软件配置
测试配置
测试结果
预期结果
错误
错误率数据
正确
可靠性预测
测试阶段的信息流
单元测试
单元测试的一般方法是:
首先通过编译系统检查并改正程序中所有的语法错误;
然后用详细设计模块说明为指南,对重要的控制路径进行测试,以便发现模块内部的错误。
通常,单元测试使用白盒测试方法。
1)模块接口
应该对穿过模块接口的数据流进行检测,以保证正确的输入和输出。
2)局部数据结构
这是错误的主要来源,应该设计相应的测试用例,以便发现数据结构方面的错误。
测试重点
3)重要的执行路径
由于不可能进行穷尽测试,因此选择测试路径是非常关键的。
4)出错处理通路
5)边界条件
审查小组:
1)组长;
2)程序的设计者;
3)程序的编写者;
4)程序的测试者。
代码审查
计算机测试
由于软件模块不是一个独立的系统,不能独立运行,要依靠其他模块调用,或需要调用其他模块。
因此,必须要为测试的单元开发驱动程序或存根程序。
1)驱动程序
相当于一个“主程序”,用来把测试数据传送给被测试的模块,并打印有关结果。
2)存根程序
用来代替被测试模块所调用的模块,相当于“虚拟子程序”。
如,测试B模块,设计了A模块和C模块。
由A负责传送测试数据,由C负责模拟被B调用的模块。C模块可能没有,这取决于B有没有调用其他程序。
A、C都是一次性程序,只在测试时临时使用,应尽量设计得简单一些,以节省费用和时间。
B
A
C
被测试模块
驱动模块
存根模块
例:
正文加工系统
输入

输出

编辑

加标题

存储

检索

编目录

格式化

添加

删除

插入

修改

合并

列表

正文加工系统(H图)
TEST DRIVER
编辑

TEST STUB
对“编辑”功能的测试:
集成测试
集成测试是组装软件的系统化技术,它将经过单元测