[发明专利]一种嵌入式二进制软件测试用例优先排序方法有效
申请号: | 201310580933.8 | 申请日: | 2013-11-18 |
公开(公告)号: | CN103678121A | 公开(公告)日: | 2014-03-26 |
发明(设计)人: | 王兴起;程攀;邹雪;方景龙 | 申请(专利权)人: | 杭州电子科技大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 杜军 |
地址: | 310018 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 嵌入式 二进制 软件 测试 优先 排序 方法 | ||
1. 一种嵌入式二进制软件测试用例优先排序方法,针对嵌入式二进制软件实效性要求,通过对测试用例优先排序提高缺陷发现效率,缩短软件发布时间,其特征在于包括如下步骤:
步骤1)分析嵌入式二进制软件函数调用关系,定位函数表,获得函数描述信息,并对特殊函数调用情况进行处理,最终得到全部函数调用关系;
步骤2)分析函数调用关系,构建函数调用关系邻接矩阵,并通过矩阵运算生成可达矩阵,得到函数间的依赖关系;
步骤3)根据函数间依赖关系,利用可达矩阵,对函数测试的先后顺序进行排序,并依该顺序对测试用例进行排序。
2.根据权利要求1所述的一种嵌入式二进制软件测试用例优先排序方法,其特征是:步骤1)具体包括如下步骤:
1)对二进制文件进行结构分析,定位符号表,并从中提取函数的信息,建立函数信息表;
2)定位到主函数入口地址,从主函数入口地址开始遍历程序中的每条指令,并按照顺序从每个函数入口地址处的指令开始进行深度优先搜索,搜集函数的调用信息;
3)对特殊函数调用情况进行处理,特殊函数包括系统函数和跳转指令;对于编译后以“_”开头的系统函数,则直接过滤掉;对于跳转指令,如果跳转目地地址是函数的地址,按照普通函数调用指令处理,否则视为语句跳转指令。
3.根据权利要求1所述的一种嵌入式二进制软件测试用例优先排序方法其特征是:步骤2)具体包括如下步骤:
1)利用二进制程序分析后的结果,分析函数之间的是否存在调用关系,并依此调用关系构建出N×N的邻接矩阵;
2)利用该邻接矩阵,依次遍历矩阵中的每一个元素,根据其下标i和j判断对应的函数是否存在调用关系;
3)若存在调用关系则遍历下一个元素;若不存在调用关系则考虑通过未被包含进路径的其他结点来判断是否存在通路;
4)循环遍历所有的元素,最终得到对应的可达矩阵。
4.根据权利要求1所述的一种嵌入式二进制软件测试用例优先排序方法,其特征是:步骤3)包括如下步骤:
1)根据最终生成的邻接矩阵,计算每一行中包含1的个数,并按递减的顺序进行排序,此时可以得到函数调用的复杂关系;
2)查看需要进行程序检测的测试用例,分析每一个测试用例经过的函数;
3)根据第1步的排序结果对测试用例进行排序,给包含最多调用关系的测试用例赋予最高的优先执行权,以此类推最终得到测试用例排序结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州电子科技大学,未经杭州电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310580933.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种代码调试方法及调试系统
- 下一篇:一种基于PXI架构的背板装置及控制方法