关键词:
多值逻辑
模型检测
测试用例
软件测试
摘要:
随着计算机技术的发展,人们日常生活的各个方面越来越依赖于计算机系统的协助,如移动计算,通信系统,信息管理系统,智能医疗系统及智能家居系统中包含的大量软件等。一个常见的问题是:软件系统的规模和复杂性的日益增加,导致其在开发、应用时出现了各种各样的伺题,软件质量难以保证。软件测试是量度软件品质,保证软件质量和可靠性的一种常用方法,且需要消耗大量的人力、物力和时间等资源;软件测试时间占到了其整个开发过程的40%~60%,故提高自动化测试程度对于减少软件开发成本、保证软件安全正常运行非常重要。其中,测试用例自动生成是提高软件测试自动化程度的关键。模型检测凭借其能协助自动生成测试用例的特点越来越受到人们关注。目前,基于模型检测自动生成软件测试用例的研究一般基于经典逻辑,主要通过显式状态搜索或隐式不动点计算来验证有穷状态并发系统的模态偷题性质,并能在系统不满足性质时提供反例路径,然后根据反例路径提取测试用例。但是在软件开发过程中,系统规模和复杂度的不断增加,导致系统模型结构不断复杂化;在利用经典逻辑模型检测对系统状态进行穷尽搜索时,容易产生状态爆炸,无法有效地实现测试用例的自动生成。所以,需要找到新方法来解决和实现测试用例自动化生成所面临的诸多问题。多值逻辑模型检测为解决上述问题提供了可行的基础。本文提出了基于多值逻辑模型检测的测试用例自动化生成方法。主要研究内容如下:首先,分析了基于模型检测自动生成测试用例的研究现状及其面临的问题;接着,阐明了多值模型检测相关理论基础;然后,给出基于多值模型检测的测试用例自动生成方法:给出刻画系统属性的时序逻辑公式;采用陷阱性质对时序逻辑公式进行变异,以满足测试覆盖度;提出多值逻辑模型检测算法,并对变异后的CTL性质进行自动化验证,生成反例,最后,对反例进行提取,自动生成测试用例。综上所述,本文提出的基于多值模型检测自动生成测试用例的方法可以实现复杂系统的测试用例自动生成,为现实环境中复杂系统测试提供了良好的基础。