2014 年第2期 (总第134 期)
信息通信
INFORMATION&COMMUNICATIONS
2014 (Sum.No134)
浅议软件测试技术的发展趋势
陈建桦
(海南师范大学,海南海口571000)
摘要:伴随着软件系统数量的增多,软件测试技术应运而生并日趋成熟,但其仍存在不足。对此,文章对软件测试技术作出概述,并就其发展趋势进行了展望,希望对推动软件测试技术健康发展有所帮助。关键词:软件测试技术;软件质量;发展趋势 中图分类号:TG420
文献标识码:A 文章编号:1673-1131(2014)02-0154-01
发了既可用又整洁的代码。
(2)测试规范会逐步实现。在软件测试过程中,测试代码往往会花费大量精力,而这无疑是制约软件测试技术规范化的重要障碍,因此为尽快使其走向标准化和规范化,就应引入软件易测试性设计,即在不影响软件复杂性的前提下,将易测试原则渗透在软件设计与编码中,以此提高测试规范和效率[4]。其中合约式方法可对软件做什么、怎样做等予以明确,并经前置、后置、循环变式、不变式等条件降低代码测试工作量,以及实现快速定位故障,同时借助iContract、Jass等针对Java语言的工具可对合约进行检查,以便降低用户负担和犯错机会,进而改善软件设计的实际效率和运行质量。
(3)测试技术会日趋成熟。随着软件测试理论研究的不断深入,以及现代技术的不断发展,软件测试技术必将会日趋成熟和先进,同时软件开发技术的层出不穷也会带动测试技术快速发展。以面向对象技术为例,其继承性、封装性、多态性等自身特点致使原有的软件测试技术难以发挥效用,因此面向对象的软件测试方法应运而生,预计云测试、嵌入式测试、冒烟测试等前沿技术和研究热点将会不断完善和成熟。
(4)自动化程度会有提高。对于软件测试而言,每个环节每个步骤都有可能进行反复测试,其中一个IF语句的增加就需要增加数倍的测试用例数目,故其自动化测试技术将会成为日后的发展重点。如国外的软件测试,便基于综合性强、通用性好的ATS以及软硬件公共平台,为软件自动化测试系统开发奠定了有力基础,并形成了以软件设计为启示、以共同测试为策略、以增值开发为手段的系统模式,加之TPS可移植,软件可重用,仪器设备成熟且标准,不仅提高了软件测试效率和效果,也降低了时间和成本,这一点值得我们借鉴。
1软件测试技术概述
1.1内涵意义
软件测试技术一般是指基于预定方案和流程对软件产品的性能和功能进行测试的技术方法,必要时也会涉及测试代码编写、分析评估问题等操作。通常软件测试技术主要负责测试软件的精确性和正确性、容错性、效率与性能、易用性和文档,以便及时发现不足并予以改善,进而提高软件的整体性能和水平[1]
。故在软件开发过程中有着不可动摇的地位。1.2发展现经过长期发展,软件测试内涵日趋丰富,技术更为先进,为状
软件质量控制提供了强有力的支持,而且正逐步走向网络化、标准化、通用化和智能化,如云测试技术可基于服务化和虚拟化的资源测试与集成测试提高软件测试的效率;冒烟测试可通过在不同阶段进行针对性测试降低正式测试负担;基于嵌入式软件测试技术既可简化测试操作,也可提高测试效果等,这些均为软件质量的改善提供了保障。
但随着软件开发的多样化和复杂化,对软件测试技术也提出了更高的要求,其现有的弊端也逐渐暴露出来。如在软件开发周期中,软件测试技术只被视为一个事后行为,而不是贯穿于整个流程,致使软件错误发现较晚,补救代价较大,将其软件质量水平不高;多数软件测试技术理论十分先进,且考虑周到,评价较高,但当其真正应用于一定的环境和项目中时往往会处于尴尬境地,进而影响软件测试顺利开展,所以合理衔接理论和实际,提高技术的可操作性尤为关键[2];由于软件测试涉及很大的工作量,几乎每个程序都需要考虑诸多逻辑路径,而且输入验证非常困难,故其自动化水平较低,充分性也无法得到有效保障;此外,我国软件测试规范和标准也亟待统一。
3结语
在软件产品开发中应用合适的软件测试技术和方法会起到事半功倍的效果,这一点不容置疑,但现行的软件测试技术还有一定的缺陷,为软件产品质量埋下了隐患,故当务之急便是准确把握其发展方向,以此开发安全可靠、自动化高的软件测试技术和产品,进而解决问题,提高测试效果,为软件安全和质量提供有力保障。 参考文献:
[1] 宋春秀.面向对象软件的测试技术的研究[J].电脑编程技巧与维护,2010(24)
[2] 刘若华,楚书来.浅谈软件测试的研究热点[J].民营科技,2012(2)
[3] 王晓华.软件测试技术应用研究[J].国防科技工业,2012(3) [4] 李静,郭晓磊.浅析软件测试技术现状[J].光盘技术,2009(5)
2 软件测试技术的发展趋势
由上可知,我国目前的软件测试技术发展水平并不十分理想,而且制约因素较多,在一定程度上限制了其效用的发挥和软件质量的提高。因此以后的软件测试技术可能会呈现出下述几个特点:
(1)测试范围会有所延伸。由于只在软件开发测试环节应用测试技术,无疑会放大需求和设计环节的缺陷,显然这种亡羊补牢式的测试无助于软件质量的进一步提升。因此未来的软件测试技术应渗透于软件开发的全过程,并强调统计分析测试数据,用于评估软件的质量趋势,以便做到事前预防和控制;而且与传统测试方法相比,其不仅利于软件缺陷的规避,质量风险的降低,也可缩短测试反馈和软件开发周期,进而节约成本费用,增加软件综合效益[3]。如融合了整个软件开发周期的驱动测试技术,便强化了测试目标的有效性和覆盖率,开
154
相关推荐: