一种用于回归测试选取测试用例的系统及方法与流程

文档序号:13455719阅读:来源:国知局
一种用于回归测试选取测试用例的系统及方法与流程

技术特征:
1.一种用于回归测试选取测试用例的系统,其特征在于,包括:源码分块装置,所述源码分块装置用于记录程序运行过程中完整的函数执行剖面信息;剖面收集装置,所述剖面收集装置用于根据所述源码分块装置中的函数执行剖面信息生成一个用于描述程序的测试用例与最后运行版本的数据矩阵;矩阵计算装置,所述矩阵计算装置用于根据所述剖面收集装置中的数据矩阵计算测试用例在新的运行版本中的回归优先值,并引导用户根据所述回归优先值进行测试用例的回归,所述矩阵计算装置具体包括:矩阵计算模块,所述矩阵计算模块用于将所述数据矩阵中的每个测试用例的最后运行版本中的函数执行剖面信息与新的运行版本中的函数信息进行对比,计算并获取最终影响系数;矩阵优先级排列模块,所述矩阵优先级排列模块用于将所述矩阵计算模块中的最终影响系数进行排列,获取每个测试用例在新的运行版本中的回归优先值;矩阵计算呈现模块,所述矩阵计算呈现模块用于引导用户根据所述回归优先值进行测试用例的回归。2.根据权利要求1所述的用于回归测试选取测试用例的系统,其特征在于,所述源码分块装置具体包括:词法分析模块,所述词法分析模块用于对待测试程序的字符流进行扫描并识别单词和语句,将所述语句进行语句类型的标记,所述语句类型包括分支语句和顺序语句;类型分类模块,所述类型分类模块用于根据所述词法分析模块输出的语句类型将程序代码分割成多个代码块,所述代码块包括顺序块和分支块,所述顺序块是一组没有分支判断的连续代码语句,所述分支块是分支判断语句的节点;结构标识模块,所述结构标识模块用于分析所述类型分类模块输出的顺序块以及分支块在程序代码中的逻辑位置,在块结构代码中添加用于表示程序代码逻辑结构的标识;结构校正模块,所述结构校正模块用于校正结构标识模块分析得到的块结构逻辑位置,生成描述程序逻辑结构的块编码表;植入探针模块,所述植入探针模块用于在处理后的程序代码块中植入探针,所述探针在程序运行时能够生成记录有探针所在代码块的标识的测试信息,所述测试信息包括函数执行剖面信息。3.根据权利要求1所述的用于回归测试选取测试用例的系统,其特征在于,所述剖面收集装置具体包括:测试用例选取模块,所述测试用例选取模块用于从之前保存的测试历史中获取每个测试用例的最后运行版本;测试用例与函数关联模块,所述测试用例与函数关联模块用于根据所述测试用例选取模块获取每个测试用例的最后运行版本中的函数执行剖面信息,并生成一个用于描述程序的测试用例与运行版本的数据矩阵。4.根据权利要求1所述的用于回归测试选取测试用例的系统,其特征在于,所述矩阵计算模块具体包括:函数执行剖面信息获取子模块,获取所述数据矩阵中的每个测试用例的最后运行版本中的函数执行剖面信息和新的运行版本中的函数信息;函数对比子模块,将所述函数执行剖面信息中的每一个函数与所述新的运行版本中的函数信息进行对比,若出现函数改动变化,则将对应的测试用例的影响系数+1,若出现函数对比删除,则将对应的测试用例的影响系数+2;最终影响系数获取子模块,将每个测试用例的最后运行版本中函数执行剖面信息的所有函数对比获得的影响系数进行累计,获取每个测试用例的最终影响系数。5.一种用于回归测试选取测试用例的方法,其特征在于,包括如下步骤:S1:记录程序运行过程中的完整的函数执行剖面信息;S2:根据所述步骤S1中的函数执行剖面信息生成一个用于描述程序的测试用例与最后运行版本的数据矩阵;S3:根据所述步骤S2中的数据矩阵计算测试用例在新的运行版本中的回归优先值,并引导用户根据所述回归优先值进行测试用例的回归,所述步骤S3具体包括如下步骤:S31:将所述数据矩阵中的每个测试用例的最后运行版本中的函数执行剖面信息与新的运行版本中的函数信息进行对比,计算并获取最终影响系数;S32:将所述步骤S31中的最终影响系数进行排列,获取每个测试用例在新的运行版本中的回归优先值;S33:引导用户根据所述步骤S32中的回归优先值进行测试用例的回归。6.根据权利要求5所述的用于回归测试选取测试用例的方法,其特征在于,所述步骤S1具体包括如下步骤:S11:对待测试程序的字符流进行扫描并识别单词和语句,将所述语句进行语句类型的标记,所述语句类型包括分支语句和顺序语句;S12:根据所述步骤S11中的语句类型将程序代码分割成多个代码块,所述代码块包括顺序块和分支块,所述顺序块是一组没有分支判断的连续代码语句,所述分支块是分支判断语句的节点;S13:分析所述步骤S12中的顺序块以及分支块在程序代码中的逻辑位置,在块结构代码中添加用于表示程序代码逻辑结构的标识;S14:校正所述步骤S13中的块结构逻辑位置,生成描述程序逻辑结构的块编码表;S15:在所述步骤S14处理后的程序代码块中植入探针,所述探针在程序运行时能够生成记录有探针所在代码块的标识的测试信息,所述测试信息包括函数执行剖面信息。7.根据权利要求5所述的用于回归测试选取测试用例的方法,其特征在于,所述步骤S2具体包括如下步骤:S21:从之前保存的测试历史中提取测试用例的最后运行版本;S22:获取每个测试用例的最后运行版本中的函数执行剖面信息,并生成一个用于描述程序的测试用例与运行版本的数据矩阵。8.根据权利要求5所述的用于回归测试选取测试用例的方法,其特征在于,所述步骤S31具体包括如下步骤:S311:获取所述数据矩阵中的每个测试用例的最后运行版本中的函数执行剖面信息和新的运行版本中的函数信息;S312:将所述函数执行剖面信息中的每一个函数与所述新的运行版本中的函数信息进行对比,若出现函数改动变化,则将对应的测试用例的影响系数+1,若出现函数对比删除,则将对应的测试用例的影响系数+2;S313:将每个测试用例的最后运行版本中函数执行剖面信息的所有函数对比获得的影响系数进行累计,获取每个测试用例的最终影响系数。
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1