[发明专利]一种基于模型变更的自动维护测试脚本的方法在审
申请号: | 201711114228.3 | 申请日: | 2017-11-13 |
公开(公告)号: | CN107766253A | 公开(公告)日: | 2018-03-06 |
发明(设计)人: | 王林章;常娜娜;李宣东 | 申请(专利权)人: | 南京大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 南京知识律师事务所32207 | 代理人: | 张苏沛 |
地址: | 210093 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 模型 变更 自动 维护 测试 脚本 方法 | ||
1.一种基于模型变更的自动维护测试脚本的方法,其特征在于,该方法包含的步骤为:
步骤1:建模,使用建模工具抽取出移动应用的状态转移关系,根据状态转移关系创建事件序列模型EMS(Event Sequence Model,ESM)来描述应用的行为,事件序列模型ESM描述了应用的状态信息以及每一个界面上的控件信息;其中状态是界面,其每一个界面的名称是唯一确定的,如果界面的名称改变了,则原来的界面被删除了,新增了一个新的界面,且原界面中的控件转移到了这个新增的界面中;
步骤2:如果当前为应用的初始版本,自动生成测试脚本:
步骤3:对于非初始版本的应用,直接通过维护上一版本的测试脚本获得。
2.根据权利要求1所述的基于模型变更的自动维护测试脚本的方法,其特征在于,步骤2中:
步骤21:获取模型中所有的路径;深度优先遍历ESM,获取所有的路径,其中每一条路径和其他路径至少有一条边不相同;
步骤22:将执行路径映射成可执行的测试脚本;测试脚本描述了应用的一系列动作,每一个动作都包含事件类型和目标对象;测试脚本执行时相当于执行了一系列的动作,每一个测试脚本对应ESM上的一条路径;ESM上的每一条边都包含事件类型和控件描述(即目标对象的标识),因此可以直接将路径中每一条边映射成一个动作。
3.根据权利要求1所述的基于模型变更的自动维护测试脚本的方法,其特征在于,步骤3中:
自动维护测试脚本的过程,其中上一版本的模型记为M1,当前版本的模型记为M2:
步骤31:对于M1中的每一个状态(界面)p1,如果p1在M2中不存在,将p1标记为删除的界面,p1中的控件标记为可能删除的控件;如果p1在M2中存在,则将p1标记为可能更改的界面;对于M2中的界面p2,如果p2在M1中不存在,则将M2标记为增加的界面,M2中的控件都标记为可能增加的控件,M2的默认事件标记为增加的默认事件;
步骤32:对于所有标记为可能更改的界面,将该界面在M1中对应的界面记为p1,M2中的对应界面记为p1’,对于p1中每一个控件w,根据控件匹配方法在p1’中找到对应的控件w’;如果w’不存在,则将w标记为可能删除的控件,否则,根据计算控件变更的方法,获取w和w’的变更,并将w和w’标记为改变的控件;对于p1中的系统默认事件,根据计算系统默认事件变更的方法,获取p1的系统默认事件的变更;对于p1’中每一个未被标记的控件w’,将w’标记为可能增加的控件,如果控件w不存在任何变更,将p1和p1’的标记改为未改变的界面,否则改为改变的界面;
步骤33:对于所有标记为可能删除的控件w,在所有标记为可能增加的控件中使用控件匹配方法查找匹配的控件w’;如果w’不存在,则将w标记为删除的控件;否则,根据计算控件变更的方法,获取w和w’的变更,并将w和w’标记改为改变的控件;对于其他被标记为可能增加的控件,将它们的标记更改为增加的控件;
步骤34:在修复脚本的过程中维护一个替换路径字典D,key是路径的初始状态和终止状态,value是初始状态到终止状态的边对应的脚本;记录已经获取过的路径,减少查找的次数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711114228.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种竹笋鸡汤面及其生产方法
- 下一篇:一种南瓜面