[发明专利]一种测试脚本的自动生成方法及系统有效
申请号: | 201711043552.0 | 申请日: | 2017-10-31 |
公开(公告)号: | CN107678973B | 公开(公告)日: | 2020-06-05 |
发明(设计)人: | 张智斌 | 申请(专利权)人: | 北京润科通用技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
地址: | 100192 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 测试 脚本 自动 生成 方法 系统 | ||
本发明提供的测试脚本的自动生成方法及系统,在获得逻辑表达式,以及判定条件与ICD变量的映射关系之后,生成逻辑表达式所对应的测试用例集,并根据判定条件与ICD变量的映射关系,确定逻辑表达式中的各判定条件对应的ICD变量;在此基础上,基于所述逻辑表达式中的各判定条件所对应的ICD变量和所述测试用例集生成所述测试用例集中的各测试用例对应的测试脚本。可见,本发明实现了一种自动化的测试脚本生成方案,可有效提升测试脚本的生成效率,且避免了语法错误、语义错误等人为错误的引入。
技术领域
本发明属于逻辑表达式相关的系统功能测试领域,尤其涉及一种测试脚本的自动生成方法及系统。
背景技术
目前,在对逻辑表达式相关的系统功能进行测试时,需首先针对该逻辑表达式设计一组能够覆盖逻辑表达式中判定条件的各种真值组合的测试用例,并人工从中选定需要执行的测试用例,在此基础上,测试开发人员需手动为每条测试用例编写测试脚本,执行测试时通过运行测试脚本的方式,完成对被测逻辑表达式的条件设置,并进而完成测试。
现有技术的上述方式至少存在以下缺陷:手动编写测试脚本的效率较低,且手动编写测试脚本可能引入人为错误,如语法错误、语义错误等,语法错误虽然通过调试可以被检查出来,但也引入了更多的调试工作量,而语义错误由于往往不影响测试脚本运行,从而难以被检查出来。
发明内容
有鉴于此,本发明的目的在于提供一种测试脚本的自动生成方法及系统,以通过一种自动化的测试脚本生成方案,来克服现有技术存在的上述缺陷。
为此,本发明公开如下技术方案:
一种测试脚本的自动生成方法,包括:
获得文档数据,所述文档数据包括逻辑表达式,以及判定条件与接口控制文档ICD中ICD变量的映射关系;
根据预定的测试用例生成规则,生成所述逻辑表达式所对应的测试用例集;
根据判定条件与ICD变量的映射关系,确定所述逻辑表达式中的各判定条件所对应的ICD变量;
基于所述逻辑表达式中的各判定条件所对应的ICD变量和所述测试用例集生成所述测试用例集中的各测试用例对应的测试脚本。
上述方法,优选的,所述获得文档数据,包括:
获得包括所述逻辑表达式的第一结构化输入文档,以及包括判定条件与ICD变量的映射关系的第二结构化输入文档;
解析所述第一结构化输入文档以及所述第二结构化输入文档,得到所述文档数据。
上述方法,优选的,所述根据预定的测试用例生成规则,生成所述逻辑表达式所对应的测试用例集,包括:
对所述逻辑表达式进行语法分析,并基于语法分析结果生成所述逻辑表达式对应的逻辑树;其中,所述逻辑树中的各叶子节点与所述逻辑表达式中的各判定条件一一对应,所述逻辑树中的各非叶子节点与所述逻辑表达式中的各运算符一一对应,且所述逻辑树中从根节点至叶子节点之间的非叶子节点所对应的运算优先级依次升高,所述根节点为运算优先级最低的非叶子节点;
根据修订的条件/判定覆盖MC/DC测试用例集生成规则,利用MC/DC树状分析法遍历所述逻辑树中的每一个叶子节点,形成多组测试用例;
对多组测试用例进行重组得到多个测试用例集,对多个测试用例集进行去重处理并从去重处理后得到的多个测试用例集中选择出用例数量为特定数量的测试用例集作为所述逻辑表达式所对应的所述测试用例集,其中,所述特定数量为:所述逻辑表达式中判定条件的数量加一。
上述方法,优选的,所述基于所述逻辑表达式中的各判定条件所对应的ICD变量和所述测试用例集生成所述测试用例集中的各测试用例对应的测试脚本,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京润科通用技术有限公司,未经北京润科通用技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711043552.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种卫浴地面清洁除菌设备
- 下一篇:一种大豆蛋白纤维的漂白方法