[发明专利]一种基于规则引擎的场景用例测试方法及装置有效
申请号: | 202010923122.3 | 申请日: | 2020-09-04 |
公开(公告)号: | CN111949553B | 公开(公告)日: | 2022-08-12 |
发明(设计)人: | 董建华 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 济南舜源专利事务所有限公司 37205 | 代理人: | 刘雪萍 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 规则 引擎 场景 测试 方法 装置 | ||
本发明公开一种基于规则引擎的场景用例测试方法及装置,将待测场景的所有业务规则定义为规则引擎的规则体形式;将定义后的业务规则存储于规则库,规则引擎根据业务规则的规则体形式获知所有业务规则对应的所有业务规则模式;在事实库执行待测测试用例,通过规则引擎将所执行待测测试用例的业务规则模式与规则库中所包含的业务规则模式相匹配;若待测测试用例执行成功,且在规则库内未匹配到相应业务规则模式,则将该待测测试用例的业务规则模式增加到规则库。本发明降低业务规则与场景测试的耦合性,减小工作量,提升工作效率。
技术领域
本发明涉及场景用例测试领域,具体涉及一种基于规则引擎的场景用例测试方法及装置。
背景技术
在测试一套完整的IT系统时,会涉及到较多的业务规则配置, 每个业务规则都会需要一个或多个前置条件和预期结果来构成一个完整的事务或场景。业务规则之间还需要排列优先级,以达到后续的业务规则才能执行。为了更好的测试IT系统,测试人员需要尽可能在不同层级的业务规则之间进行枚举、排列、组合,以覆盖更好的业务场景,达到完美的测试结果。但是面对更多的场景,业务规则多,业务规则之间相互依赖,耦合度高,就会造成测试人员在构造业务场景时,工作量较多,测试场景可能产生遗漏,或者当业务规则发生变动时,要重新进行枚举、排列、组合。从头捋逻辑,在合适的地方进行添加或删除业务规则,修改前置条件和预期判断。
发明内容
为解决上述问题,本发明提供一种基于规则引擎的场景用例测试方法及装置,减少测试人员工作量,提升工作效率。
本发明的技术方案是:一种基于规则引擎的场景用例测试方法,包括以下步骤:
将待测场景的所有业务规则定义为规则引擎的规则体形式;
将定义后的业务规则存储于规则库,规则引擎根据业务规则的规则体形式获知所有业务规则对应的所有业务规则模式;
在事实库执行待测测试用例,通过规则引擎将所执行待测测试用例的业务规则模式与规则库中所包含的业务规则模式相匹配;
若待测测试用例执行成功,且在规则库内未匹配到相应业务规则模式,则将该待测测试用例的业务规则模式增加到规则库。
进一步地,该方法还包括:
若待测测试用例执行不成功,且在规则库内匹配到相应业务规则模式,则返回该待测测试用例为失败用例或同时将该待测测试用例的业务规则模式从规则库中删除。
进一步地,该方法还包括:
若待测测试用例执行成功,且在规则库内匹配到相应业务规则模式,则返回该待测测试用例为成功用例。
进一步地,事实库中的待测测试用例包含规则库中所有测试用例和在规则库中测试用例基础上改动的新增测试用例。
进一步地,将待测场景的所有业务规则所定义的规则体,包括条件部分和结果部分,其中条件部分为执行对应业务规则所依赖的前置条件,结果部分为对应业务规则的执行优先级。
进一步地,规则库中,规则引擎将定义后的业务规则转换为业务规则执行树,具体为:
将优先级最高的业务规则作为起始节点;
某一层的前置条件为该层的上一层业务规则;
前置条件相同的业务规则设置在同一层;执行相关测试用例时,同一层内的业务规则按优先级依次执行。
本发明的技术方案还包括一种基于规则引擎的场景用例测试装置,包括,
业务规则定义模块:将待测场景的所有业务规则定义为规则引擎的规则体形式;
业务规则存储模块:将定义后的业务规则存储于规则库,规则引擎根据业务规则的规则体形式获知所有业务规则对应的所有业务规则模式;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010923122.3/2.html,转载请声明来源钻瓜专利网。