系统的实现与测试(摘抄)

一、系统的实现
程序设计可以采用结构化程序设计,面向对象程序设计,面向方面程序设计,可视化程序设计
可以采用测试自动化来进行测试,目前主要的测试自动化工具有:
(1)单元测试工具,如JUnit检查内存泄露,代码覆盖率
(2)负载和性能设计
(3)GUI功能测试工具,主要用于回归测试
(4)基于WEB的测试工具,主要用于连接检查和安全性方面的检查

二、系统的测试
软件调试方法主要有蛮力法,回溯法,原因排除法
蛮力法:激活内存映像,输出寄存器内容,凭借现场信息进行跟踪
回溯法:从错误征兆开始,人工进行追踪,如果程序很大,回溯路径过多,将很难完成
原因排除法:事先找到可能存在的原因,然后利用输入数据对这些原因进行验证。

软件测试方法主要有静态测试,白盒测试,黑盒测试。
其中静态测试依赖于认得分析。
(1)白盒测试主要包括:
控制流测试:对语句覆盖,判定覆盖,条件覆盖,判定条件覆盖,条件组合覆盖,修正条件/判定覆盖,路径覆盖
数据流测试
程序变异测试:是一种错误驱动测试,将源程序做符合语法的改动形成变异体,然后用大量的测试数据集进行验证,如果产生的输出相同,则变异体存活。否则,则变异体死亡。对存活的变异体,应该检查其是否和源程序等价,如果不等价则无法证明源程序的正确性。
变异测试自动化程度高,但是成本也非常高

(2)黑盒测试
主要用于集成测试,确认测试和系统测试截断。
设计黑盒测试的数据用例时吗,主要有以下方法
功能分解
等价类划分:对所有输入可能进行划分,形成等价类,即等价类中的一个数据可以检测出一个错误,则其他数据也可以检测出相同的错误。如果一个等价类中的输入时不合法的,则称之为无效等价类,对每一个有效等价类和无效等价类都要涉及一个测试用例
边界值分析
判定表
因果图
状态图
随机测试
错误推测
正交实验法

(3)测试的类型
主要有单元测试和集成测试,系统测试。还有配置测试,确认测试,回归测试
(3-1)单元测试因板材区静态测试和动态测试相结合
(3-2)集成测试可以基于分解进行测试,渐增式集成测试将单元测试和集成测试结合在了一起,每次新加入一个未经测试的模块。相比之下,增量式集成测试容易定位错误,排除故障,测试更彻底。测试工作量大,测试过程长,进度慢。
基于功能的集成策略
基于调用图的集成测试
在进行集成测试前,要进行集成测试分析,分析软件特性,架构,莫亏,接口,可测性,可测充分性,测试终止条件,测试技术分析,测试资源分析,测试风险
(3-3)系统测试
系统测试主要是依据用户需求和开发合同,进行功能测试,健壮性测试,性能测试,用户界面测试,安全性测试,安装和反安装测试。

(4)面向对象的软件测试
面向对象的单元测试主要包括方法层次的测试,类层次的测试,类属性层次的测试
面向对象的集成测试也有传统的集成测试,写作集成,基于使用的集成(首先测试几乎不适用其他类的类),类的连接测试

你可能感兴趣的:(测试)