[发明专利]一种基于服务编排的故障注入测试场景用例模型和框架在审
申请号: | 201911332361.5 | 申请日: | 2019-12-22 |
公开(公告)号: | CN111176989A | 公开(公告)日: | 2020-05-19 |
发明(设计)人: | 杜庆峰;殷康璘;赵亮;张双俐;韩永琦;徐锦程;邱娟 | 申请(专利权)人: | 同济大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 上海科盛知识产权代理有限公司 31225 | 代理人: | 赵继明 |
地址: | 200092 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 服务 编排 故障 注入 测试 场景 模型 框架 | ||
本发明涉及一种基于服务编排的故障注入测试场景用例模型和框架,其中的用例编排模型把一个测试用例描述为多个由若干测试步骤组成的测试流,测试步骤和包含特殊测试逻辑的测试流将通过调用服务化的测试组件执行,以上述编排模型为基础,框架将整合现有的微服务编排组件以及服务化的测试工具。用户把编排模型描述的测试用例文件传至测试框架后,测试框架内的解析器将测试用例解析为工作流文件发送给微服务编排组件,微服务编排组件根据工作流文件调用各测试服务以执行测试用例。与现有技术相比,本发明具有提高测试效率,支持特殊测试逻辑服务等优点。
技术领域
本发明涉及计算机测试技术领域,尤其是涉及一种基于服务编排的故障注入测试场景用例模型和框架。
背景技术
随着网络功能虚拟化、容器化等技术的发展,现今依赖于云环境的系统(这类系统通常被称为云原生系统)的拓扑结构已更加复杂,其可靠性面临着严峻的挑战。传统的系统可靠性测试仅包含单纯的故障注入,然而为了验证云原生系统的可靠性,需要设计复杂的测试场景:测试场景中既需要在目标系统中注入故障,又需要对目标系统模拟大量的用户压力,同时也需要不断地采集目标系统的性能监控数据和日志数据。使用现有的测试工具(如Jmeter,LoadRunner,WebLoad,Yardstick等)实现上述测试场景的过程中,存在以下问题:
1.不同测试工具的侧重点各不相同(如仅用于故障注入的测试工具和仅用于用户压力模拟的测试工具),在测试过程中往往只能逐个使用这些测试工具测试目标系统,无法将它们整合在一起共同使用,实现更全面的测试场景;
2.现有测试工具无法体现出分支、并行、等待等流程逻辑,不能满足比较复杂的测试场景需求。
微服务架构是一种新的软件架构。相比于采用传统单体架构的应用,基于微服务架构搭建的应用具有易于扩展、可自动化部署等优势。利用微服务架构,可以让现有的测试工具服务化,通过服务编排实现复杂的故障注入测试用例。但在使用微服务编排组件(如conductor)实现服务化测试的过程中,用于执行测试用例的服务编排文件往往包含大量有关服务的配置信息,难以供测试人员解读。此外,现有的微服务编排组件也无法实现特定的测试逻辑(如,在压力测试中循环地增加业务压力直至系统发生故障)。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于服务编排的故障注入测试场景用例模型和框架。
本发明的目的可以通过以下技术方案来实现:
一种基于服务编排的故障注入测试场景用例模型,该模型包括测试用例,所述测试用例包括多个测试流,每个所述测试流中包括多个测试步骤,每个所述测试步骤调用对应的测试组件服务。
进一步地,所有的所述的测试流之间均能够互相嵌套组合。
进一步地,所述测试流的类型包括用于简单顺序执行的普通执行流和用于运行特殊测试逻辑的测试逻辑流。
进一步地,所述测试逻辑流调用对应的测试逻辑服务。
进一步地,所述测试用例封装成单独的测试服务,每个所述测试服务将自身的测试功能以接口的形式展现。
进一步地,所有所述接口均被统一调用或编排。
本发明还提供一种基于所述的基于服务编排的故障注入测试场景用例模型的微服务架构的服务编排测试框架,该测试框架包括:
测试服务端,用于作为基于Web的前端交互界面,测试人员可以通过所述测试服务端实现创建测试用例、编辑测试用例、执行测试用例;
用例解析模块,用于将测试用例转化为可被所述微服务编排组件识别的工作流文件,并发送至所述微服务编排组件;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于同济大学,未经同济大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911332361.5/2.html,转载请声明来源钻瓜专利网。