数据结构算法设计题的测试程序辅助构建研究

来源 :广东工业大学 | 被引量 : 4次 | 上传用户:sunjun
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
程序测试是保证程序正确性的重要手段,而测试数据的选择以及测试数据的生成是其核心与关键。然而目前程序测试的测试数据的生成方法多是针对数值型数据,如整型数据、实型数据等,难以直接应用于动态数据结构上,且基本上都是手工生成,一定程度上影响了其发展。因此,研究基于动态数据结构的测试数据和测试程序的生成方法,具有十分重要的意义和广阔的应用前景。广东工业大学计算机学院吴伟民教授开发的“数据结构算法设计可视化作业系统AnyViewDS"(以下简称AnyViewDS作业系统)是一个数据结构课程编程作业的可视化运行、调试、提交和测试的集成环境,它支持学生在互联网上完成算法设计题型作业。学生只需编辑输入算法的函数体,系统自动对其进行可视化的实时测试。但是,目前其测试数据和测试程序的生成都是教师手工编写的,非常耗费教师的时间和精力。因此,为了提高该系统的实用性,减少教师的工作量,有必要开发一个基于动态数据结构的测试程序生成系统。基于以上原因,本文以AnyViewDS作业系统中学生提交的作业程序为实验对象,结合动态数据结构的程序测试的相关技术,对数据结构算法设计题的测试程序辅助构建进行系统研究,主要工作如下:首先分析了AnyViewDS作业系统的不足,提出测试程序生成的需求。在对目前AnyViewDS作业系统中现有的测试程序进行分析与研究的基础上,总结出各个题目对应的测试程序的共同特征,将其抽象为测试程序生成模板,在此基础上提出了一种基于模板填充的测试程序生成方法,并且用于测试数据的构造。为了系统的高耦合性,本文借助测试程序辅助函数库来实现该方法。针对各种不同的数据结构,本文设计并实现了不同的测试程序辅助函数。其次,在Java Swing技术的基础上,通过人机交互的方式,设计并实现了基于模板填充方法的测试程序生成系统TPGS(Testing Program Generating System),该系统可以半自动生成AnyViewDS作业系统中需要的测试程序。最后,为了验证所提出的基于模板填充的测试程序生成方法,将测试程序生成系统TPGS生成的测试程序与AnyViewDS作业系统进行集成,进行实验。实验结果表明所提出的测试程序生成方法达到预期目标。
其他文献
目前,无线传感器网络(Wireless Sensor Network, WSN)节点定位研究主要集中在静止节点的定位研究上,对移动节点的定位研究比较少。针对不同的应用场景,网络的部署情况将不尽
随着互联网技术的飞速发展以及多媒体信息的急剧增加,人们对多媒体信息系统的安全性、可靠性、稳定性以及高效性提出了更高的要求。传统的C/S结构开发的应用系统普遍存在着效
云计算因其高效快捷、轻松实现数据共享、对用户终端要求低、强大计算及空间等优势,在互联网资源中占有重要地位。但安全问题却成了云计算快速发展的主要障碍,制约着云计算的发
21世纪,科学技术日新月异、多媒体信息铺天盖地,作为一种特殊的知识形态,近年来,图像内容受到了人们的广泛研究,尤其在特征提取、情感计算、图像检索方面取得了丰硕成果。但图像研
在过去的几十年里,由于安全和商业领域应用需求的日益增长,人脸识别已经成为了研究的热点。许多新的人脸特征提取技术被提了出来,其中一部分已经成功的在实际中得到了运用。
模型检测作为一种重要的形式化验证技术,具有可靠、高效的优点,能够实现自动验证,获得了越来越多的关注,并在硬件电路、通信协议、控制系统、安全认证协议等方面的分析与验证
随着嵌入式技术和视频编码技术的发展,以及人们对视频应用的需求同益增加,在嵌入式平台上实现视频的采集编码已经成为当前研究的热点。由ITU-T和ISO/IEC共同制定的H.264,与以
旅行商问题(TSP,Travlling Salesman Problem)是经典的组合优化问题,也是属于NP难问题。实际中的技术工程问题,如电路板钻孔问题,城市规划问题,邮递员送信问题,网络布局问题
轮廓检测和图像分割是计算机视觉领域两个最基本的关键问题。传统的基于区域和边缘的方法,不能同时兼顾抗噪性和检测精度,难以满足复杂分割应用的需要。自然图像中的轮廓检测算
在网络使用过程中,由于用户具有各自的兴趣爱好和访问习惯,因此其关注的内容不完全相同,使用网络的时间和服务也各不相同,并且不同的用户群体不可避免地带有各自的群体行为特征。