[发明专利]一种基于测试用例获取进程模块间依赖关系的方法有效
申请号: | 201711216909.0 | 申请日: | 2017-11-28 |
公开(公告)号: | CN107992414B | 公开(公告)日: | 2020-11-17 |
发明(设计)人: | 曲明成;何金虎;王冠楠 | 申请(专利权)人: | 曲明成 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 哈尔滨市松花江专利商标事务所 23109 | 代理人: | 岳泉清 |
地址: | 150000 黑龙*** | 国省代码: | 黑龙江;23 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 测试 获取 进程 模块 依赖 关系 方法 | ||
一种基于测试用例获取进程模块间依赖关系的方法,本发明涉及基于测试用例获取进程模块间依赖关系的方法。本发明的目的是为了解决现采用穷举法进行测试用例的生成,则生成的测试用例数量级为幂级数,当模块m较大时,验证效率极低,且存在大量的冗余验证的问题。一种基于测试用例获取进程模块间依赖关系的方法过程为:一、输入并处理正确与错误测试用例,测试用例包括所有进程模块;二、根据正确测试用例和第一个错误测试用例生成相关矩阵;三、根据比较矩阵C生成可疑点;四、根据可疑点生成测试用例并验证;五、移出第一个错误测试用例;六、判定错误测试用例数目是否为0;是,输出运行结果;否,执行二。本发明用于任务块依赖关系确定领域。
技术领域
本发明涉及基于测试用例获取进程模块间依赖关系的方法。
背景技术
多进程同步运行过程中,其异步性体现在进程中模块的交替执行,并且该执行次序为无序的,进程按各自独立的、不可预知的速度向前推进。为了实现进程同步,可以采用信号量机制、管程机制等方式根据进程间的依赖关系来控制进程的执行顺序。但是并不能确定进程内部哪些模块之间存在依赖关系的时候,就需要通过一系列的测试用例验证来获得模块间的前趋关系。其中每个测试用例为一组包含多个进程中所有模块的一个执行序列,该顺序在验证时保证可控。
关于测试用例如何生成,如果直接采用穷举法进行测试用例的生成,则生成的测试用例数目数量级为幂级数,当模块m较大时,验证效率极低,且存在大量的冗余验证。比如若现有两个进程,分别有n个进程,则m=2n。经计算,可能存在的异步执行序列数目F(n)满足等式:当n较大时,F(n)≈4F(n-1);即数量级为O(4n),又因为m=2n,则实际数量级为O(2m),当m=14时,所有可能存在的序列数目为3432;当m=20时,所有可能存在的序列数目为184756。
发明内容
本发明的目的是为了解决现采用穷举法进行测试用例的生成,则生成的测试用例数量级为幂级数,当模块m较大时,验证效率极低,且存在大量的冗余验证的问题,而提出一种基于测试用例获取进程模块间依赖关系的方法。
一种基于测试用例获取进程模块间依赖关系的方法具体过程为:
步骤一、输入并处理正确与错误测试用例,测试用例包括所有进程模块;
步骤二、根据正确测试用例和第一个错误测试用例生成相关矩阵;具体过程为:
相关矩阵为4个m*m的m阶矩阵,如下:
正确矩阵T:根据正确测试用例生成;
正确初始矩阵M1:根据第一个正确测试用例生成;
错误矩阵F:根据错误测试用例生成;
比较矩阵C:根据正确初始矩阵和错误矩阵计算生成,即M1-F;
步骤三、根据比较矩阵C生成可疑点;
步骤四、根据可疑点生成测试用例并验证;
步骤五、移出第一个错误测试用例;
步骤六、判定错误测试用例数目是否为0;是,输出运行结果;否,执行步骤二。
本发明的有益效果为:
本发明根据分析两个进程单模块间的依赖关系、两个进程多模块间的依赖关系,多个进程多模块间的依赖关系测试用例生成情况,总结出了一种通用的测试用例生成算法。
本发明提出基于测试用例获取进程模块间依赖关系的方法,根据已有的若干正确和错误的测试用例,生成新的测试用例并验证,获得模块间的依赖关系。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于曲明成,未经曲明成许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711216909.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种不可信搜索路径漏洞的检测方法及系统
- 下一篇:一种蓄电池单体检测装置