论文部分内容阅读
单元测试是软件测试的起始阶段,充分有效的单元测试可以发现大量软件故障并降低软件开发成本。代码测试系统(Code Testing System, CTS)实现了自动化的单元测试,它能够弥补手工测试效率低、失误多的缺陷,并且能够向用户提供充分可靠的单元测试结果。良好的时间性能能够增强CTS在同类软件测试产品中的竞争力,因此对CTS进行性能优化研究具有重要意义。原有CTS中存在的主要性能问题有:1)完成工程模块划分功能的时间开销很大;2)生成工程树的时间开销很大;3)代码编辑器不支持语法着色功能,用户写错了关键字不容易被发现;4)界面不够友好,用户理解界面上各种信息的含义需要较长时间。本文围绕CTS性能优化进行了深入研究,针对原有CTS中存在的四大性能问题提出了相应的优化策略。1)提出了动态文件缓存技术来优化工程模块划分过程的性能;2)使用了延迟加载技术和一种减少磁盘I/0次数的机制来优化工程树的生成过程;3)使用了语法着色技术对代码编辑器进行优化;4)严格按照界面优化原则对CTS界面进行了优化。动态文件缓存由文件缓存和缓存估算模型两部分组成。缓存估算模型不仅使CTS的文件缓存规模具有动态变化的能力,还能使其尽可能大,从而最大限度地减少磁盘I/0的次数。实验结果表明,本文采用的性能优化策略都能有效地提高CTS的时间性能。动态文件缓存技术能够有效地减少CTS完成工程模块划分所需的时间开销;工程树优化技术能够大大减少生成工程树所需的时间开销;语法着色技术能让用户及时发现写错了关键字,从而减少了代码的编译开销;优化后的CTS界面更加友好,能够减少用户理解界面上各种信息所需的时间。