51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3687|回复: 6
打印 上一主题 下一主题

软件测试的基本过程(转贴)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2004-9-15 15:22:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
软件测试的基本过程
软件测试是一个极为复杂的过程。一个规范化的软件测试过程通常包括以下基本的测试活动:
拟定软件测试计划
编制软件测试大纲
确定软件测试环境
设计和生成测试用例
实施测试
生成软件测试报告
对整个测试过程进行有效的管理,实际上,软件测试过程与整个软件开发过程基本上是平行进行的,那些认为只有在软件开发完成以后才进行测试的观点是危险的。测试计划早在需求分
析阶段即应开始制定,其它相关工作,包括测试大纲的制定、测试数据的生成、测试工具的选择和开发等也应在测试阶段之前进行。充分的准备工作可以有效地克服测试的盲目性、缩短测试周期,提高测试效率,并且起到测试文档与开发文档互查的作用。
软件测试大纲是软件测试的依据。它明确详尽地规定了在测试中针对系统的每一项功能或特性所必须完成的基本测试项目和测试完成的标准。无论是自动测试还是手动测试,都必须满足测试大纲的要求。
测试环境是一个确定的,可以明确说明的条件,不同的测试环境可以得出对同一软件的不同测试结果,这正说明了测试并不完全是客观的行为,任何一个测试的结果都是建立在一定的测试环境之上的。没必要去创造一个尽可能好的测试环境,而只需一个满足要求的、公正一致的、稳定的、可以明确说明的条件。测试环境中最需明确说明的是测试人员的水平,包括专业的、计算机的、经验的能力以及与被测程序的关系,这种说明还要在评测人员对评测对象作出的判断的权值上有所体现。这一点要求测试机构建立测试人员库并对其参与测试的工作业绩不断做出评价。
一般而言,测试用例是指为实施一次测试而向被测系统提供的输入数据、操作或各种环境设置。测试用例控制着软件测试的执行过程,它是对测试大纲中每个测试项目的进一步实例化。已有许多著名的论著总结了设计测试用例的各种规则和策略。从工程实践的角度出发,应遵循以下几点:
1)要弄清软件的任务剖面,使测试用例具代表性;能够代表各种合理和不合理的、合法和非法的、边界和越界的,以及极限的输入数据、操作和环境设置等;
2)测试结果的可判定性:即测试执行结果的正确性是预先可判定的;
3)测试结果的可再现性:即对同样的测试用例,系统的执行结果应当是相同的。
3 软件测试工具
以往对应用系统大多采用手工调试的方法,或编制一些测试程序进行一下测试,既耗去大量时间又不规范。在将软件分发给用户使用时,常常发生问题,严重时致使系统瘫痪,这不仅无法收回最初的投资,而且造成巨大经济损失。据美国计算机市场分析调查权威机构Gartner Group统计,世界上仅有16.2%的应用系统较为完善和成功。可见,传统的手工测试已远远不能满足现实需求。企业及独立软件开发人员正在寻求能探测并改正错误的测试工具。
测试工作需要新一代科学的测试方法予以支持。这种科学的测试应是贯穿整个开发过程的。
据有关机构研究表明:在开发周期中,每推后一步实施错误检查,成本就会增加10%。因此,查找、修改错误的最佳开始时间是在项目设计阶段,之后伴随着开发过程的每一个环节,保证测试与开发同步进行。
由此可见,利用测试工具是确保软件质量的必要手段。
美国Rational公司的著名套装软件SQA Suite和PureAtria公司极具特色的Purify是测试工具中的佼佼者。
SQA Suite是美国优秀自动测试工具,它是针对Windows客户机/服务器环境中,用PowerBuilder、Visual Basic、SQL Windows、Delphi和Developer 2000等第四代语言开发的应用而研制的。目前占据着世界Windows自动测试市场65%的市场份额。
SQA Suite的各组件(SQA Manager、SQA Robot、SQA LoadTest)各司其职,又紧密集成,有效地完成了整个测试生命周期。
SQA Robot
利用SQA Robot能够创建、修改、运行自动测试程序,以确保软件在分发前达到要求的质量。该模块包含两种特殊技术:基于对象的录制技术和对象测试,以便对Windows应用程序进行对象级测试。
对象测试技术不仅使Robot能测试应用的GUI,还可以检测应用中对象的所有属性,包括手工不能测的不可视属性。例如,SQA Robot可测试由Powerbuilder的DataWindow生成的对数据库的SQL调用。
SQA LoadTest
SQA LoadTest是网络自动测试工具,对Windows Client/Server应用进行加载(load)、强化(stress)和多用户测试。
LoadTest可完成以下任务:
1)对TCP/IP、NetBIOS和IPX/SPX网络上的Client/Server应用进行加载、强化和多用户测试,确保应用的质量达到分发的水平。
2)在Windows NT、Windows95和Windows3.x平台上对32位和16位的应用进行跨Windows平台测试。
3)测试任何与Windows NT、Windows95、Windows3.x客户端相连的服务器(包括UNIX、Windows NT和OS2)。
4)无须编程,仅通过点击鼠标,即可生成Client/Server的多站点测试。
5)通过在执行测试时增加测试站点来改变系统的加载量。
6)在多台站点上同步运行复杂的多用户应用。
SQA Manager
它是软件开发和测试的信息管理工具,在软件开发、测试到升级的整个过程中,它都可以对测试信息进行跟踪。
利用SQA Manager可以完成以下工作:
1.制定测试计划;
2.跟踪有关测试执行的信息;
3.从发现到解决,对缺陷不断进行跟踪;
4.利用报表对整个软件测试进行管理。
总之,SQA Suite提供了一个比较完整的测试平台,以支持软件测试的各种基本活动,包括测试计划与测试大纲的制定、回归测试的自动化、测试结果的分析比较、软件问题报告的生成与自动分发和控制等。对于许多应用软件的开发无疑是个有力的测试支持工具。
Purify是原PureAtria公司(现已经与美国Rational公司合并,改名为美国Ratioal公司)于90年代初率先推出的专门用于检测程序中种种内存使用错误的软件工具。几乎所有使用过C语言开发软件的程序员都会有这样的体会,C语言中使用极为灵活的指针给程序员带来了很大便利,但同时也制造了许多的麻烦。由于指针使用不当而引起的错误通常是最难发现的,同时也是最难定位的一类错误。而Purify对多种常见的内存使用错误的检错能力和准确的定位,受到广大软件开发人员的青睐。
Purify可以自动识别出二十多种内存使用错误,包括:
未初始化的局部变量
未申请的内存
使用已释放的内存
数组越界
内存丢失
文件描述问题
栈溢出问题
栈结构边界错误等
在97年初,原PureAtria公司陆续推出了其系列产品—Pure,包括支持内存检测的Purify,支持路径覆盖的PureCoverage,支持多线程应用程序性能测试的Quantify,以及用以提高测试期间连接编译被测程序效率的PureLink等。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏

该用户从未签到

2#
发表于 2004-10-1 20:01:17 | 只看该作者
好冬冬
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2004-10-4 13:12:55 | 只看该作者
要记住才行啊!
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2004-10-7 19:11:02 | 只看该作者
:|那是不容易的
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2005-4-14 17:11:00 | 只看该作者
好东西,顶啊
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2005-4-19 20:50:10 | 只看该作者
提个建议,在测试用例之前,是否应当加入一个测试需求文档??
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2007-3-20 16:19:51 | 只看该作者
sdlkfj2
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /2 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-7-1 17:14 , Processed in 0.078221 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表