[发明专利]一种黑盒回归测试方法有效
申请号: | 201710365931.5 | 申请日: | 2017-05-23 |
公开(公告)号: | CN107193739B | 公开(公告)日: | 2020-06-05 |
发明(设计)人: | 于秀山;张泽祎;刘然;于长钺 | 申请(专利权)人: | 张泽祎 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京众合诚成知识产权代理有限公司 11246 | 代理人: | 文芳 |
地址: | 100191 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 黑盒 回归 测试 方法 | ||
1.一种黑盒回归测试方法,其特征在于,包括以下步骤,
步骤S101:源代码解析,通过类型解析和对源代码的词法、语法分析得到代码的语法树和类型系统;
步骤S102:界面元素分析,扫描源代码抽象语法树,以窗口类定义为基本单元,分析被测软件的界面构成,形成界面元素树模型;
步骤S103:交互关系分析,扫描源代码抽象语法树,并依据所使用的类型系统对调用逻辑、事件流进行分析,形成被测软件界面元素调用关系模型;
步骤S104:测试执行过程跟踪,捕获用例执行过程中所输入的数据以及点击的界面元素,形成用例执行路径数据;
步骤S105:用例覆盖分析,将用例执行数据与界面模型进行匹配,得到每个用例执行后被覆盖的界面元素和路径,并以图形方式显示于界面上;
步骤S106:测试用例约简,分析一组用例所覆盖的界面元素和路径,采用基于调用路径和基于界面元素覆盖数量两种算法剔除其中冗余的测试用例,形成测试用例集;
步骤S107:功能差异检测,通过对两个软件版本的静态分析结果进行分析,找出两个版本间的UI差异和UI变更位置;
步骤S108:功能变更影响分析,依据找到的变更点,采用回溯迭代算法,在界面元素静态结构模型上查找依赖项,形成从变更点出发的变更影响范围即影响域;
步骤S109:回归测试用例筛选:以变更影响域为目标函数,采用覆盖的变更功能优先、关键度优先以及路径长度优先策略,从约简后的测试用例集中查找出能够覆盖变更影响域的最少个数测试用例;所述步骤S109回归测试用例筛选采用覆盖的变更功能优先、关键度优先、路径长度优先三种原则,从约简后的测试用例集中,挑选出个数最少的测试用例;
排序指标的计算方式为:
变更功能:整个用例路径上覆盖变更影响域中未覆盖变更点的个数,用来描述单个测试用例对变更影响域覆盖的贡献;
路径关键度:使用在静态分析中的到的UI元素依赖关系有向图中UI节点的扇入数与扇出数的总和,结合测试需求来标注单个元素的关键度,整个用例的关键度是用例所覆盖变更域内尚未覆盖的变更点的关键度的总和,用来描述单个测试用例对变更影响域关键功能点覆盖的贡献;
路径长度:标注测试用例路径的长度,用来度量测试用例执行的大小及用例的综合测试能力,在覆盖度相同的情况下优先选择路径长度大的测试用例;
步骤S110:影响域覆盖分析,依据筛选出的回归测试用例所能够覆盖的变更影响域,找出尚未被覆盖的变更影响域。
2.按照权利要求1所述的一种黑盒回归测试方法,其特征在于:所述步骤S101源代码解析中如果代码为C#语言,将代码的逻辑结构与代码所述的类型系统相关联,所述类型系统中包含被测软件自定义的类型、引用类库的类型以及框架自身的类型,依据其关联关系识别出语法树的语义信息。
3.按照权利要求1所述的一种黑盒回归测试方法,其特征在于,所述步骤S104测试执行过程跟踪具体还包括以下步骤,
步骤S141:执行窗口调用树图构建;
步骤S142:界面控件捕获。
4.按照权利要求3所述的一种黑盒回归测试方法,其特征在于:所述步骤S142中的界面控件包括按钮、编辑框、菜单项、ListView、标签、Tab选项卡、列表框和ComboBox。
5.按照权利要求1所述的一种黑盒回归测试方法,其特征在于,所述步骤S106测试用例约简具体包括以下步骤,
步骤S161:关键用例处理;
步骤S162:用例筛选;
步骤S163:结果提交。
6.按照权利要求1所述的一种黑盒回归测试方法,其特征在于:所述步骤S108功能变更影响分析包括基于功能图的变更影响分析和基于调用关系的变更影响分析。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于张泽祎,未经张泽祎许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710365931.5/1.html,转载请声明来源钻瓜专利网。
- 上一篇:基于设备控制的时段识别方法和装置
- 下一篇:一种无甲醛环保型玻璃棉胶黏剂