● 摘要
随着计算机技术的迅猛发展,计算机在日常的工作生活中变得愈发重要。无论是从事科学研究还是在工作生产中,计算机已成为重要的辅助工具;在互联网的浪潮之下,计算机对于一部分人来说已经成为主要的生产工具。无论是生产科研中的计算机还是日常生活中的手机,软件起到了至关重要的作用。软件在一定程度上连接了人和计算机硬件,起到了接口的作用。一个优秀的接口,可以有效提高人们的工作效率,改善人们的生活品质。然而,软件的质量并不总是可以得到充分保障;而在软件质量较差的情况下,软件非但不能帮助人们,反而可能会带来负面的影响。因此,如何提高软件的质量,并量化软件的质量成为一个研究的重点。
在软件工程中,软件测试是一种有效的保障软件质量的途径。一般来说,软件测试的主要目的体现在两个方面,一为提高软件可靠性,一为度量软件可靠性。具体说来,前者表现为通过软件测试不断发现并修复软件中的缺陷,并以这种方式不断提高软件的可靠性,提高软件的质量;而后者专注于通过软件测试定量地计算在某些应用场景下的软件可靠性数值,并为软件工程师提供相应的决策依据。因此,通过合理改进现有软件测试策略,应当可以有效地提高软件测试的效率和有效性,实现使用较少的测试资源发现更多的软件缺陷或得到更精确的可靠性数据,从而满足人们日益增长的对于高质量软件的需求。
基于上述目标,本文从控制理论和控制工程的角度出发,研究了如何将反馈控制的思想融入到现有的软件测试策略中,从而提高软件测试的效率和有效性。具体来说,论文的主要创新性工作及成果如下:
1. 提出一种新型的混合自适应测试技术。相比于传统的应用于可靠性提高的自适应测试技术,该混合自适应测试技术不再着眼于限制参数估计中采用的测试历史的容量以期控制测试的效率,而是通过将自适应测试技术与一些实现简单但缺陷检测有效性较低的测试策略混合执行,从而实现在控制测试策略的整体计算代价的同时提高测试策略的缺陷检测有效性;
2. 提出一种全局渐进最优的自适应可靠性评估技术。针对于最小化可靠性估计器方差的问题,提出了一种新的自适应测试策略。该测试策略在选择测试用例时是局部最优的;随着测试过程的进行,在得到的参数估计越来越精确的情况下,该测试策略可以收敛到理论上的全局最优解。
3. 提出一种新的自适应可靠性评估技术,旨在实现可靠性估计器方差和置信区间宽度的双优化。在其可靠性评估的自适应测试的优化目标中,考虑了最小化可靠性估计的置信区间宽度,同时保证可靠性估计器的方差也是最小化的。鉴于这样的优化目标是难以通过现有的自适应测试策略来实现的,因此,本文在自适应测试框架下重新设计目标函数实现这一目标。
4. 对动态随机测试技术中测试剖面的变化情况进行建模和理论分析。从理论上分析了动态随机测试技术中参数设置对于测试剖面变化情况的影响,并通过仿真实验加以初步验证,给出了参数设置的初步指导。