[发明专利]基于遗传算法的消息传递接口程序分支覆盖测试方法有效
申请号: | 201911343498.0 | 申请日: | 2019-12-24 |
公开(公告)号: | CN111459790B | 公开(公告)日: | 2023-07-25 |
发明(设计)人: | 巩敦卫;孙百才;沈鑫;杜莹;潘峰;姚香娟;田甜 | 申请(专利权)人: | 中国矿业大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06N3/126;G06N3/006 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 221116 江苏省徐州*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 遗传 算法 消息 传递 接口 程序 分支 覆盖 测试 方法 | ||
本发明公布了一种基于遗传算法的消息传递接口程序分支覆盖测试方法,旨在针对消息传递接口程序高效生成覆盖所有分支的测试套件。具体步骤如下:(1),基于收集覆盖信息的探针,定义最小归一化分支距离;(2),基于定义的最小归一化分支距离,设计出目标函数;(3),使用遗传算法生成进化个体,并基于设计的目标函数,计算这些个体的目标函数值,直到生成覆盖所有分支的测试套件或达到最大进化代数,终止算法。
技术领域
本专利属于软件测试领域,具体涉及一种基于遗传算法的消息传递接口程序分支覆盖测试方法,可用于软件测试中生成覆盖所有分支的测试套件。
背景技术
软件测试是一种确保软件质量和可靠性的重要方法。软件测试中,生成一组测试数据(即测试套件),以满足一个特定的测试准则,是一项具有挑战性的任务。此外,已有统计结果表明,软件测试占整个软件开发成本的50%以上。幸运的是,自动测试生成方法可显著减少软件测试代价和成本,并引起了学术界的广泛关注。
消息传递接口已成为实际上的并行编程标准,用于开发基于消息传递的并行程序,其目的是为用户提供一个实际可用的、可移植的、高效的和灵活的消息传递库。消息传递接口以语言独立的形式定义这个接口库,并提供了与C、FORTRAN和Python语言的绑定。这个定义不包含任何专用于某个特别的制造商、操作系统或硬件的特性。由于这个原因,消息传递接口被并行计算界广泛的接受与应用。鉴于此,对消息传递接口程序进行结构覆盖测试,以生成满足特定覆盖准则的测试套件,是很有必要的。
目前,存在多种覆盖准则,包括语句覆盖,分支覆盖,路径覆盖。根据已有的测试经验,分支覆盖是结构测试中最具成效的方法。与分支覆盖相比,若被测程序中存在循环语句,则完全的路径覆盖测试是不切实际的。此外,语句覆盖无法检测程序中存在的错误条件。因此,针对结构测试,大多数研究采用分支覆盖作为覆盖准则。
针对分支覆盖测试,测试套件生成方法得以提出,该方法能够高效生成覆盖程序所有分支的测试套件。为提高测试生成效率,学者们提出了一种动态多目标排序算法,该算法作为多目标求解器,用于生成满足分支覆盖准则的测试套件。此外,通过深度分析,学者们进一步验证了测试套件生成方法的有效性。随后,针对人工生成测试数据等不切实际的问题,模因蚁群优化算法被用于生成满足分支覆盖准则的测试套件。
然而,以上的研究成果主要适用于串行程序。此外,考虑到遗传算法具有原理和操作简单、通用性强、不受限制条件的约束,且具有隐含并行性和全局解搜索能力,已经被广泛应用于软件测试中,并被验证能够高效地生成测试数据。基于以上分析,为覆盖消息传递接口程序的分支,本文提出一种基于遗传算法的消息传递接口程序分支覆盖测试方法,实现以降低测试代价自动生成测试套件。
发明内容
本发明首先通过程序静态分析将用于收集覆盖信息的探针插入到所有分支中,并基于这些探针,定义最小归一化分支距离;然后,基于定义的最小归一化分支距离,设计出目标函数;最后,使用遗传算法生成进化个体,并计算这些个体的目标函数值,基于计算的目标函数值,进化生成覆盖所有分支的测试套件。
本发明所要解决的技术问题:克服现有方法的不足,提供一种测试套件自动生成方法,用以提高消息传递接口程序分支覆盖测试套件的生成效率,降低测试代价。
本发明的技术方案:提出了一种基于遗传算法的消息传递接口程序分支覆盖测试方法,其特征在于如下步骤:
步骤(1):定义最小归一化分支距离
记一个消息传递接口程序为P={p0,p1,...,pm-1},其中,pi(i=0,1,...,m-1)表示P中的第i个进程,m表示进程数。将用于收集覆盖信息的探针插入到进程pi的所有分支中,并基于这些探针,定义如式(1)所示的最小归一化分支距离。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国矿业大学,未经中国矿业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911343498.0/2.html,转载请声明来源钻瓜专利网。