软件开发过程中常用的软件测试方法_第1页
软件开发过程中常用的软件测试方法_第2页
软件开发过程中常用的软件测试方法_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件开发过程中常用的软件测试方法2010-3-29 10:09:22 作者:佚名一、目前项目中所使用的测试方法我目前所在的项目中(目前项目是一套C/S架构的系统),所使用的 软件测试方法为:单元测试,集成测试,功能测试,回归测试,验收 测试。下面就上面的三种 软件测试方法,分别做一下说明:(1)单元测试这个步骤主要是开发者针对开发过程中,程序内部的函数、类、变量等等数据进行正确性的测试。开发人员根据需求, 在经过详细设计之后,开始着手编写代码。一般情况下,每完成一个函数(类、变量)之后,就要进行单元测试,以验证编写的函数能完成详细设计说明 中的功能。举个例子:一个函数需要把一些重要的数据插入到

2、数据库中。那在编写完这个函数之后,就要进行测试,以验证函数能正确带出需要插入数据库的数据变量带出的数据可以正确 的插入需要插入的数据库。在上述测试通过之后,再接着按照详细设计说明进行接下来的开发工作。(2)集成测试集成测试是在单元测试的基础上,将所有模块按照详细设计的要求组装成子系统或系 统,进行集成测试。集成测试侧重于模块间的接口正确性以及集成后的整体功能的正确性。举个例子:等一个个函数或者功能模块的单元测试完成之后,就需要测试这些函数或者模块之间的整体的数据流是否正确。(3)功能测试等开发人员开发完之后就要把最后开发、测试(单元测试,整合测试)完的 requirement release

3、给内部QA人员去做功能测试。因为开发人员的单元测试、集成测试 只能保证release给QA的新的requirement的开发是可以正常运行的,执行起来的效率是 最高的,一些基本的功能(如:数据库操作,通信,显示, error handing ,信息反馈 ) 可以正常使用。但是对于特定需求的业务逻辑还不能完全保证其正确性,所以需要更加详尽的功能测试过程。在功能测试过程里,需要测试人员严格的按照需求说明,测试新开发的requirement是否完全符合user的要求,是否符合行业的规范,是否符合实际的操作流程和业务逻辑。(4) 回归测试回归测试是指在发生修改之后重新测试先前的测试以保证修改的正确性。

4、理论上,软件产生新版本,都需要进行回归测试,验证以前发现和修复的错误是否在新软件版本上再次出现。根据修复好了的缺陷再重新进行测试。回归测试的目的在于验证以前出现过但已经修复好的缺陷不再重新出现。一般指对某个已知已经修正的缺陷再次围绕它原来出现时的步骤重新测试。(5) 验收测试验收测试是 软件测试过程中的最后一步。这时相关的user根据需求说明文档对系统进行测试和验收,决定是否接收系统。它是一项确定产品是否能够满足合同或用户所规定需求 的测试。验收测试的目的是确保系统已经准备就绪,并且可以让最终user使用新需求中的功能。二、软件测试工具针对上述测试过程,单元测试和集成测试都是需要 软件开发人员

5、去控制和把关的。 一个 好的开发人员肯定也是一位好的单元测试、集成测试人员,因为在开发的过程中时刻都需要进行单元测试和集成测试。虽然单元测试有专门的测试、(需要购买相应的license),但是我觉得在目前项目的 开发过程中不是非常有必要,这个在开发人员开发的时候就可以去把关卡住,不需要QA再通过相关的自动化测试工具去做复杂的白盒测试。对于功能测试,特别针对于我们现在的项目,我们可以设计一套测试系统去测试每条 message处理逻辑的正确性。这个测试系统成立的前提条件是,我们在需求成立的时候就把相关的测试用例设计出 来,针对于目前项目中的 message来说,就是在send给SERVEFM体 m

6、essage的时候,就能 把相关replay的信息预知出来;这个前提条件其实完全可以做到,就是在正真开发之前先模拟一遍开发完成后的实际的需求,通过在数据库运行具体的sql逻辑、改变数据库数据等等方法先把新requirement中的逻辑事前模拟一遍,然后根据模拟出来的具体值编写测试用例。等到单元测试、集成测试完之后就运用测试系统去运行事前已经编写好的测试用例,如果得到的结果符合测试用例的值,那么说明这次测试时通过的。这个测试工具需要针对目前项目的每条message编写不同的处理逻辑(因为每个message各不相同),然后匹配事前已经定义好的测试用例来验证功能是否符合需求。三、几个不能覆盖到的地方

7、1、 因为这个测试系统只能根据message的replay值来进行匹配验证,所以如果一条message的功能主要放在逻辑处理上(TP,数据库操作 ).而不是放在 message replay上的话,那样就不能通过message replay的信息中得到预定的值来进行功能验证。2、replay的信息量很大的话,也不能进行验证。四、release的时候所遇到的问题的分析1、在release给QA之前就存在问题这个问题主要体现在单元测试,集成测试的时候没有覆盖到很多临界数据、特殊数据。 这些临界的数据或者需要特别处理的数据往往导致操作失败或者系统崩溃,所以在进行单元测试、整合测试的时候设计这些数据是很有必要的。2、QA release给user的时候存在的问题这个部分是因为没有把所有的操作都进行完整的测试,没有完全覆盖到需求说明中的所有业务逻辑导致的。3、已经修改过的错误再次发生这是因为没有进行回归测试。4、最终user报需求不符合要求,使用不习惯,有很多 bug这个原因比较复杂,其

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论