软件测试 方法总结

软件测试其实并不是一个复杂的工序,我看老师的课件,好多什么原则啊之类的东西,我觉得基本都是废话,还是测试方法这部分才是最实用的。 关于软件测试就只写这一篇了,

软件测试其实并不是一个复杂的工序,我看老师的课件,好多什么原则啊之类的东西,我觉得基本都是废话,还是测试方法这部分才是最实用的。

关于软件测试就只写这一篇了,下面就总结一下软件测试方法

1. 黑盒测试和白盒测试

    黑盒测试其实就是说软件内部代码本身对我们来说是隐蔽的,我们只能给输入留,然后查看输出流情况,或者根据事件驱动或客户需求来查看软件是否符合需求规格说明书,这种测试也叫功能测试数据驱动测试。

  理想的方法是测试所有的可能输入组合,但是这是绝对不可能完成的。

  白盒测试就是说软件内部是透明的,我们可以清楚地看到它的逻辑结构,然后选择测试用例,对所有的逻辑路径进行测试,以查看每个逻辑点与预期结果是否一致。这种测试也叫做结构测试逻辑驱动测试

白盒测试要求所有的逻辑路径至少被使用一次,逻辑值均要测试真假值,检查内部结构以保证有效性。

2.静态测试和动态测试

静态测试即直接通读代码,并不运行和编译,一般借助一些工具对代码进行扫描,找出不符合规范的部分,根据某种模型评价代码质量,生成系统的调用关系图等。静态测试工具的代表有:Telelogic公司的Logiscope软件;PR公司的PRQA软件。

动态测试则是在代码中可执行文件中加入一些检测性代码,以观测运行中的数据变化,所以要求程序是运行的。动态测试工具的代表 有:Compuware公司的DevPartner软件;Rational公司的Purify系列等。

3.自动测试和手动测试

略了吧。。。

 

软件测试的分类,应用一下老师课件里的图片:

单元测试:就是针对小模块测试,主要通过白盒测试的方法找出错误,在开发阶段进行。

 集成测试:在单元测试的基础上,将模块组合测试,主要目标是发现模块之间的接口和功能相关性错误。

系统测试:将软件放在整个计算机环境下,包括软硬件平台、某些支持软件、数据和人员等,在实际运行环境下进行一系列的测试,包括恢复测试、安全测试、强度测试和性能测试等 

验收测试目的是向未来的用户表明系统能够像预定要求那样工作,验证软件的功能和性能如同用户所合理期待的那样


功能测试:一般须在完成集成测试后进行,而且是针对应用系统进行测试。功能测试是基于产品功能说明书,是在已知产品所应具有的功能,从用户角度来进行功能验证,以确认每个功能是否都能正常使用 


以上每个阶段,都有自己的目标、任务和方法,我也懒得详细的说了,理论性的东西,说的再多不如自己测试一回来的容易理解。

软件测试的阶段:

阶 段

输  入

 输  出

 需求分析

需求定义, 市场分析文档, 相关技术文档

市场需求分析会议记要 , 功能设计,

技术设计

设计审查

市场需求文档,  技术设计文档

测试计划,  测试用例

功能验证

 

代码完成文件包,功能详细设计说明书

最终技术文档

完整测试用例,完备的测试计划, 缺陷报告,

功能验证测试报告

系统测试

 

代码修改后的文件包

完整测试用例,完备的测试计划

缺陷报告

缺陷状态报告

项目阶段报告

确认测试

 

 

代码冻结文件包

确认测试用例

缺陷状态报告

缺陷报告审查

版本审查

版本发布 

代码发布文件包

测试计划检查清单

当前版本已知问题的清单

版本发布报告

 

 

软件测试的基本概念就这么些了,针对里面提到的每个概念都有很多内容,写起来没完没了,我还是决定就看一遍得了,不用记下来了。

标签: 软件测试 文档