关于计算机软件工程测试的一些探讨

来源 :数字化用户 | 被引量 : 0次 | 上传用户:wdkkiller
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘 要】软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科,是为了开发出满足用户需求的质量优秀的软件产品。为了有效保证软件产品开发的效率和质量,减少软件维护的困难,就必须重视软件测试。本文主要介绍了软件测试的含义,并对软件测试的内容进行了详细的分析。
  【关键词】软件测试;产品;目标;原则;工具
  软件测试是在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。为了有效保证软件产品开发的效率和质量,减少软件维护的困难,就必须重视软件测试。在计算机软件技术发展迅速的今天,软件测试逐步走向了自动化,这不仅可以对软件测试的过程进行有效的把控,还能提升整体测试的水平。在软件测试工作中有一个重要问题,那就是要促实现知识管理过程与软件测试过程有效集成,从而促进知识资产在软件测试组织中的传播与重用。软件测试是一项知识密集型活动,为此作为软件设计师必须充分了解软件测试的相关知识、技巧,这样才能充分利用现代化测试技术进行软件测试。
  一、软件测试的目标
  1.软件测试员的基本目标就是为了发现软件缺陷。成功的测试是发现了至今为止尚未发现的错误的测试。测试并不仅仅是为了找出错误,而要通过分析错误产生的原因和错误的发生趋势,可以帮助项目管理者发现当前软件开发过程中的缺陷,以便及时改进。但是目前很多软件开发团队不是去找软件中的缺陷,而只是为了证实软件中不存在错误,可以很好满足用户需求。这样的话,软件工程师就没有探索和发现错误的热情,不希望在测试过程中出现问题,这样就很容易放过软件中隐藏的错误和缺陷。
  2.软件测试员还必须尽早地发现软件错误。测试应该尽早进行,最好在需求阶段就开始介入,这样才能做到早发现、早解决。据相关数字统计资料显示,软件缺陷存在时间越长,修复费用将会越高,而且以数十倍在增长,从经济、效率的角度来看,工作人员也必须尽早发现、解决软件错误。同时还需要在整个软件开发的过程中都要进行软件测试,这样才能尽可能全面地发现软件中潜在的缺陷,尽早的解决。
  3. 软件测试人员必需确保找出的软件缺陷得以关闭,而不是要软件缺陷得以修复。因为在软件测试工作中,成功的测试是发现了至今为止尚未发现的错误,切实站在用户的角度,将更深层潜在的问题都测试出来。因为时间、风险因素的限制并非所有的软件缺陷都必须而且能够得以修复,那么这是就需要软件测试人员尽可能找到软件存在的缺陷并关闭缺陷。
  二、软件测试的基本原则
  1.软件测试应该尽早进行,最好在需求分析阶段就开始介入。只有这样才能全方位地发现软件开发过程中存在的问题,这样才能做到早发现、早解决。软件缺陷存在时间越长,修复费用将会越高,而且以数十倍在增长,从经济、效率的角度来看,工作人员也必须尽早发现、解决软件错误。
  2. 程序员应该避免检查自己的程序,软件测试应该由第三方来负责。当一个程序员完成了设计与编写程序的建设性工作后,要一夜之间突然改变他的观点,设法对程序形成一个完全否定的态度,那是非常困难的。所以,大部分程序员都由于不能使自己进入必要的精神状态就不能有效的测试自己的程序。如果有条件的话,应当由独立于开发组和客户的第三方测试组或测试机构来进行软件测试。
  3.设计测试用例时应考虑到合法的输入和不合法的输入以及各种边界条件,特殊情况下要制造极端状态和意外状态,如网络异常中断、电源断电等。
  4.还必须应该充分注意测试中的集群现象。
  5.对错误结果要进行一个确认过程。一般由A测试出来的错误,一定要由B来确认。严重的错误可以召开评审会议进行讨论和分析,对测试结果要进行严格地确认,是否真的存在这个问题以及严重程度等。
  6.制定严格的测试计划。一定要制定测试计划,并且要有指导性。测试时间安排尽量宽松,不要希望在极短的时间内完成也有一个高水平的测试。
  7.妥善保存测试计划、测试用例、出错统计和最终分析报告,为维护提供方便。
  三、软件测试的阶段性分析
  (一)发现和解决缺陷的阶段。在这个阶段要尽可能多的发现缺陷。在这个阶段,测试工作主要集中于发现缺陷,为此要具备考验测试设计得能力,发现缺陷之后还要能够清晰的描述、定级、跟进和验证,要充分理解业务和架构,发现一类问题能够举一反三发现更多类似的问题。
  (二)质量管理。为了持续的优化软件,形成一个良性的循环系统,为此还必须加强对缺陷的分析和考核,有效地梳理和改善研发流程中出现的问题。首先要做质量数据的统计和分析,收集的数据很多,常见的有:外网的缺陷情况,包括事故,及影响的程度;测试阶段的缺陷数量,分布,严重程度,缺陷的类别等维度;缺陷的横向跨团队和系统的对比,纵向的和历史情况对比;版本发布的情况,代码变更行数的情况。其次就是问题的追溯和对于开发的考核,光靠观念和自觉是不够的,必需要有一定的反馈机制,这样才能起到良好的约束作用,通常的考核指标涉及这些方面:编译失败次数的考核; 外网事故和缺陷的数量;测试阶段的缺陷,特别是基础功能缺陷和严重缺陷,如果剔除其他因素只看开发代码原因的编译失败则更明显,特别是后面有惩罚机制之后,进一步下降。再次就是对于测试的考核,测试的考核通常考虑下面的指标:漏测:绝对数量或者漏测率;版本的工作量和测试效率;发布延期的情况。最后就是要推动开发的自测,这通常取决于开发负责人的观念和态度,有良好的自动化条件效果就会更好。
  (三)推动全面的质量提升。首先要管理好整个研发流程;其次就是提交测试前后的一些事情,采用代码的静态扫描和 code review;再就是要注意不断提升测试能力,采用自动化技术和一些辅助手段;还要注重把控发布环节的质量,了解到不同的组织做法不同,执行发布的人员可能不同,有开发,运维,专职的版本管理或者测试来做;最后还要提升整体的运营质量。
  参考文献:
  [1]史济民.软件工程原理方法与应用[M].北京:高等教育出版社,2001.
  [2]张海藩.软件工程导论[M].北京:清华大学出版社,1997.
  [3]佘健明.工程咨询概论[M].中国计划出版社,2007
其他文献
详述了定向X光机单次多张透照的工艺计算,指出了单次多张透照工艺参数的选取办法及注意事项,为定向X光机单次多张透照工艺的制定提供了依据。 The process calculation of s
目的 将脑源性神经生长因子(BDNF)和神经干细胞(NSCs)单独及联合移植应用于大脑中动脉阻塞(MCAo)模型大鼠,观察BDNF和NSCs移植对大鼠缺血性脑卒中神经功能恢复的作用及BDNF对
某煤焦油深加工试验装置中有部分(工艺)压力管道承插焊角焊缝,其设计压力:1.2MPa;设计温度:90℃;腐蚀裕度:0;焊缝系数:0.9;介质:石油醚、丙酮、煤焦油等,母材材质:304(0Cr18N
引言:同学们在学习html,css,javascritp基础知识之后,对大多数网站上焦点图片浏览,非常感兴趣,但又不知怎样设计,我依据这一学情,我在《网页设计》教学中,设计这样一个项目:“网站焦点图片网页设计“。效果图如下图所示:  一、功能分析与要求  (一)图片定时切换,如2秒切换一次,且切换时过渡效果,切换到哪张图片,下边对应的数字变色;  (二)单击下边的数字时,图片切换到相应的图片;  
0前言当今世界,计算机网络发展十分迅速,生产制造企业在日常生产中已经脱离不了与计算机网络的联系。虽然计算机网络技术也在不断地完善之中,但是由于其是一个极为庞大,且分
【摘 要】计算机的产生与发展给人们的生活与工作方式带来了极大的便利,特别是新世纪以来计算机的发展,很大程度上推动了社会的发展和进步。随着社会的进步、技术的革新,我们计算机技术必将走上新的发展道路,本文主要分析了目前我国计算机发展的趋势,并对未来计算机技术的发展做了展望。  【关键词】计算机技术;发展;趋势;展望  一、计算机的发展史  1.大型主机阶段。随着第一台计算机的诞生,计算机就经历了电子管
【摘 要】当前网页制作软件、多媒体制作软件、专业软件都必需在Windows XP操作系统的支持下才能进行安装和操作。那么,网络在计算机实验室应用的具体可从哪些方面体现出来呢?本文理论联系实际对计算机网络在计算机实验室功能的应用进行了探讨。  【关键词】计算机网络 实验室 研究  客户端若要在Windows XP操作系统下登录局域网的服务器,只要在该平台的网络对象图标添加网络操作系统协议及网卡驱动程
针对阳光公司 3#、4 #锅炉燃烧系统在运行中存在飞灰可燃物偏高 ,再热器受热面超温 ,炉内结焦等问题。通过对 3#、4 #炉的燃烧系统多次调整 ,总结和分析出燃用无烟煤的中储式
0 引言rn在大数据和互联网+时代,企业逐步意识到用户数据是企业生存和发展的基础,用户数据的泄露和误删改对企业形象和数据应用造成巨大的负面影响,所以企业目前普遍采用信息
目的探讨非小细胞肺癌术前转移相关基因联合检测的临床意义.方法采用RT-PCR法联合检测46例病人术前外周血淋巴细胞及术后切除组织标本中转移相关基因CD44v6和nm23H1 mRNA的表