系统测试在软件开发中的重要作用

来源 :消费电子 | 被引量 : 0次 | 上传用户:pp084
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:本文重点介绍了系统测试在软件开发过程中的重要作用,列举了软件测试的基本原则和方法,并以自行开发的在线即时通信软件的部分模块进行各种功能测试和确认测试,其目的是通过与系统的需求相比较,尽可能多的发现软件开发过程中的错误,使系统的可靠性进一步提高。
  关键词:系统测试;软件开发;在线即时通信
  中图分类号:TP311 文献标识码:A 文章编号:1674-7712 (2012) 18-0022-02
  为了开发的软件满足用户需求,软件设计开发人员运用了大量分析、设计和调试方法,在分析设计的每个部分结束前,对相应的分析设计结果进行严格的审查和评定。由于人为能力有一定的局限性,审查很难发现所有的错误和缺陷,而且在编码调试阶段会引出大量的错误,在所设计的软件投入运行之后,这些缺陷和错误最终会暴露出来。而这可以通过系统测试来解决,系统测试就是在软件投入运行之前,对软件的需求分析阶段、概要设计阶段、详细设计阶段和编码部分的最终审查,是保证软件质量的关键步骤[1]。
  一、系统测试的含义
  系统测试是指为了发现软件的错误而执行程序的过程。系统测试的最基本任务是尽可能多的、彻底的检查出程序运行中的错误,提高软件系统的可靠性,从而能检验出系统是否存在问题。在软件开发的整个过程中,通常使用大量保证软件质量的方法分析、设计和实现软件,但仍然难免会出现一定的错误,从而导致软件产品中隐藏一些错误和缺陷。尤其是对于规模较大、复杂性较高的软件更会如此。在这些错误和缺陷中,有些是致命的,如果不排除掉,就可能会导致重大损失。基于这种情况迫使设计者必须认真计划、彻底地进行系统测试[2]。
  二、系统测试的原则
  系统测试的原则是必须最大限度地模拟出被测试软件的实际运行环境,以保证测试的可靠性[3]。
  在进行有效无误的系统软件测试之前,系统测试工程师必须了解软件系统测试的基本原则:
  (1)查找错误的源泉。系统测试的最终目标在于查找软件错误,而最严重的错误(用户角度)就是完成的用户需求分析模型是错误的。
  (2)系统测试计划要在需求分析模型完成时形成,详细的系统测试过程要在软件的任意代码产生之前就进行计划和设计。
  (3)Pareto原则。Pareto原则意喻在系统测试中发现的错误有80%可能来源于程序模块中的20%。
  (4)系统测试应按照有“小规模”到“大规模”的方式进行。最初的测试要把焦点定位在单个程序模块上,然后在逐渐向集成的模块簇转变,最后在整个系统中寻找错误。
  (5)穷举测试是无法实现的。选择尽可能充分覆盖程序逻辑关系的数据。
  (6)系统测试的实现要由第三方来独立完成。创建系统的软件设计工程师不是构造软件测试的最佳人选。
  系统测试工作人员通常站在用户的角度(第三方)来把握系统,并且在软件开发的整个阶段中时刻与用户进行不间断的交流和沟通,理解系统业务需求、理顺业务关系,测试系统的可靠性、可用性、正确性、完整性和可维护性等。依据软件开发各阶段的规格说明和程序的内部结构认真设计各种测试用例,用这些精心设计的测试用例去执行程序进行系统测试,以发现程序的错误。软件测试所追求的是通过各种不同的系统测试方法,发现软件中错误,完善丰富的错误诊断信息,以便于改正错误,达到预错误的发生,减少软件相应开发费用的目标[1]。
  如果系统测试对软件的审查不够严格,引起了大量的错误,待到那时,不仅要付出很高的代价来改正这些错误,还会造成无法弥补的损失。系统测试在软件整个生命周期中主要经历两个阶段:通常在编写出每一个模块之后就对它做必要的测试,这称为单元测试。编码与单元测试属于软件开发生命周期中的同一阶段。在结束这个阶段之后,对整个软件系统还要进行各种不同的综合测试,这是软件生命周期的另一阶段,即测试阶段[2]。
  三、系统测试的方法
  黑盒测试和白盒测试是系统测试的基本方法。这两种方法主要是依靠一组精心挑选的测试用例为输入执行程序,对程序的行为进行逐个检验,确定其是否与软件预期的结果相符。因此,对系统进行实时性测试时,要借助相应的测试工具对应用程序的算法复杂度和操作系统的任务调度进行分析测试。从测试是否针对具体实现算法的角度和系统的內部结构来看,软件测试可以分成黑盒测试和白盒测试。
  (1)黑盒测试又称为功能测试,它是通过测试输入和输出来检测每个功能模块是否都能正常使用。在测试过程中,把每个功能模块程序看作是一个不能打开的黑盒子,在完全不考虑其程序内部结构和内部特性的情况下,在程序的输入和输出接口处进行测试,它仅仅检查程序的每个模块功能是否按照需求规格说明书的规定正常运行,以及程序是否能准确地接收输入数据而输出正确的结果信息。黑盒测试主要是从程序的外部结构出发,不考虑程序本身的内部逻辑结构,主要针对的是软件界面和软件基本功能进行测试。黑盒测试是站在用户的角度,从输入数据与输出数据的对应关系出发进行测试的。这种测试方法的缺点是如果程序外部特性本身有问题或规格说明的规定有误,用墨盒测试方法是检测不出来的。
  (2)白盒测试又称为逻辑驱动测试或结构测试,它主要按照程序内部的结构来进行测试的,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都是按照预定要求进行正确工作的。这种方法是把被测试对象看作一个打开的盒子,测试工程师依据程序内部的逻辑相关信息,设计或选择对应测试用例,对程序所有可能的逻辑路径进行测试,通过在不同的测试点检查程序的状态,确定实际的状态是否与预期的状态一致[4]。
  四、系统测试举例
  这里以用户自行开发的一款在线即时通信系统为测试用例进行系统测试,本系统实现的通信功能极其复杂,运用多个线程进行前台和后台的消息发送和接收。使用ServerSocket创建要连接的端口,线程连接socket打通前后台的消息通道。在线即时通信系统登录界面如图1所示。   根据这一逻辑,在线用户登陆成功后就将登陆ID保存在线程中,打开在线好友通信窗口时,也会将接收者的ID进行保存,这样就能正确保证消息的发送者和接收者。消息的传递会通过前台发送给连接后台的线程,经后台线程处理后,找到接收者,再将信息进行转发,这样就完成了好友间的在线即时通信。同时,在用户登录时,也会进行上线提示,将自己在线情况通知给所有在线用户,又将所有在线用户的状态进行显示。这样就能正确的显示在线用户列表,也能准确的实现在线用户间消息传递。
  在线即时通信模块功能测试过程和要求如下:
  1.登录模块
  (1)测试描述。用户需正确输入用户名和密码,才能正确登录并跳转到好友列表界面。系统默认用户名为1-50之内的任意数字,密码为123456。
  (2)测试步骤。首先打开在线即时通信登录界面,输入用户名和密码;然后点击登录按钮;最后确认是否能够正常登录。
  (3)合格标准。输入正确的用户名和密码后,能够成功登录,并跳转到我的好友列表;或者用户名和密码不正确时会弹出相应的错误提示。
  2.好友列表界面
  (1)测试描述。登录成功的用户在好友列表会以彩色头像显示,后登录的用户会通知所有在线用户更新好友列表。双击在线好友能正确打开通信对话框。
  (2)测试步骤。首先由登录用户跳转到好友列表,确认好友列表可以将自己的头像设置成彩色在线状态;然后再登录一个用户,确认能正确通知所有在线用户进行好友在线更新,鼠标滑过在线用户时,确认是否有不同颜色提示;最后双击在线好友头像,能实时打开通信对话框。
  (3)合格标准。登录成功在好友列表显示自己的头像为彩色在线状态,并获取所有在线好友;后登录的用户会通知所有在线用户更新自己的在线好友列表;鼠标滑到在线用户名上时,用户名由黑色变为红色;鼠标滑过时,又会从红色变為黑色;双击在线好友,能成功打开通信对话框,发送者和接收者均正确。
  3.通信界面
  (1)测试描述。在线好友间的消息能够准确发送和接收,并正确显示在通信界面上。
  (2)测试步骤。首先互相打开在线好友的通信界面;然后在文本框中输入通信内容,可以是任意字符,点击发送按钮;最后确认发送的消息是否能准确显示在接收者的通信界面上。
  (3)合格标准。输入任意通信内容,点击发送后,接收者的通信界面上即时显示好友发送的消息,同时好友也能接收返回的信息,并正确显示。
  五、总结
  将系统测试的基本方法用于软件开发过程中,可以增加软件的可靠性,使软件在投入运行之后基本不出错误,或者错误很少。对实际开发的软件系统按照测试步骤进行测试,满足测试通过原则的软件系统安装到用户现场能够顺利实施和运行,得到用户认可。
  参考文献:
  [1]马瑞芳,王会燃.计算机软件测试方法的研究[J].小型微型计算机系统,2009,12.
  [2]张新华,何永前.软件测试方法概述[J].科技视界,2012,2.
  [3]郭远东,黄荣瑛.基于模块化设计的嵌入式软件测试方法[J].单片机与嵌入式系统应用,2005,1.
  [4]冯博琴.软件开发技术[M].北京:高等教育出版社,1996.
  [作者简介]王丽平(1974-),女,汉族,吉林长春人,长春工程学院,讲师。
其他文献
2007年4月4日下午是难得一个轻松的下午,我开始整理以前拍的一些数码照片,当整理到2月25日从我家拍的南浦大桥的十余张片子时,发现其中一张曝光有点过,于是用PHOTOSHOP的“阴影与
常常接触许多欲购买天文望远镜的人,他们的条件大多是:我想买一台能拍出很漂亮照片的那种望远镜。不错,拍一张漂亮的星云、壮阔的星团的确让人很有成就感,但曾几何时,我们的天文风
随着计算机科学技术的迅猛发展,高校电子阅览室普及率提高,对电子阅览室的管理和维护成了图书馆工作的重要内容之一。免费电子阅览室的管理和维护问题要认真进行探讨,并要提
各省辖市、省直管县(市)人民政府,省人民政府各部门:根据国家评比达标表彰工作有关规定,结合我省工作实际,省质量强省战略工作领导小组对《河南省省长质量奖管理办法》部分内容进行
发生在Gliese 581c上的日出会是什么样的情景?在一位艺术家的想象之下。画出了上图的样子。Gliese 581c是目前人们发现的系外行星中与地球最相似的一颗,距离我们大约20光年远。
本文利用DOAJ开放存取期刊目录,从国家和地区分布、年增长情况、出版语种、学术质量等角度对化学OA期刊进行统计,并分析化学OA期刊发展存在的问题,期以促进我国OA期刊的良性
2000年,F.德雷克仍在做有关外星探索方面的工作。他把射电望远镜的灵敏度大大提高。他说:“我们所要做的就是寻找,寻找,再寻找,直到我们的目光在一个恰当的时间投向一个恰当的地点。他们在进化上或是科技的发展上也许比地球上的人类提前了数十亿年,我们所面临的就如同正在对自己的未来进行一次考古学的研究。”  国际天文学界曾不止一次建议,只通过接收宇宙信息来寻找外星生命,而不提倡主动发送有关地球的信息。在波
直到志留纪,已经存在了三十多亿年的地球,才开始展现它的第一缕绿色。此时,海水已经慢慢退下,在原来被浅海浸漫的地方,一些海洋植物留了下来,舒展它柔弱的身姿,第一批陆生蕨类诞生了
12月30日,国家海洋局、海军政治部在京联合召开大型海洋文化纪录片《建向海洋》媒体见面会。国家海洋局办公室主任、国家海洋局新闻发青人石青峰做了主旨讲话,总体介绍了拍摄该
探讨了独立院校图书馆的藏书保护问题。着重提到了破损图书的修补问题,分析了高校图书馆图书破损的原因,列出了处理破损图书的方法,同时指出修补破损图书的必要性。