[发明专利]一种基于Docker的软件大规模测试方法有效
申请号: | 201611088872.3 | 申请日: | 2016-11-30 |
公开(公告)号: | CN108121654B | 公开(公告)日: | 2020-11-06 |
发明(设计)人: | 韩锐;姜凯华;郭志川 | 申请(专利权)人: | 中国科学院声学研究所;上海尚恩华科网络科技股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京方安思达知识产权代理有限公司 11472 | 代理人: | 王宇杨;杨青 |
地址: | 100190 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 docker 软件 大规模 测试 方法 | ||
1.一种基于Docker的软件大规模测试方法,其特征在于,包括:
步骤1)利用被测软件及其运行环境生成Docker镜像;
步骤2)根据测试策略从步骤1)所生成的Docker镜像中依次启动各Docker容器;
步骤3)为步骤2)所启动的各Docker容器分别配置初始资源;
步骤4)利用步骤3)所配置的Docker容器进行软件测试,在测试过程中,根据测试策略动态修改Docker容器的资源配置,查看并记录被测软件在Docker容器资源变化下的运行状况;
步骤5)根据测试策略停止或者重启Docker容器,查看被测软件动态上下线情况,并记录被测软件占用资源、启动时间和数据恢复信息;
所述的步骤4)具体包括:
步骤401)根据Docker容器ID,找到与其相同ID的cgroups组中各项资源对应的cgroups文件;
步骤402)在软件运行过程中,动态地修改软件所在容器对应的cgroups组,使容器资源配额发生变化,以模拟软件运行的实际环境;
步骤403)链接Docker自生成的虚拟终端,利用shell命令查看并记录软件在Docker容器资源变化下的运行状况,作为软件被测试的基础数据;
所述的步骤1)具体包括:
步骤101)根据被测软件运行环境,选择基础操作系统镜像启动用于测试软件的各Docker容器,在各Docker容器中添加被测软件所需依赖库和相关环境变量;
步骤102)从安装有依赖库和环境变量的容器中生成新镜像;
步骤103)将被测软件导入新镜像,生成用于测试的Docker镜像;
所述的步骤2)具体包括:
步骤201)设置各Docker容器在宿主机上的部署策略,编写配置文件,记录每个Docker容器的编号对应的物理、网络资源的配置要求和资源上限;
步骤202)从配置文件中读取对Docker容器的物理、网络资源要求,按步骤201)所设置的部署策略,在宿主机上构建不同配置的Docker容器的分配方案;
步骤203)利用步骤202)所构建的分配方案从Docker镜像中启动各Docker容器,并获取Docker容器64位长ID;
所述的步骤3)具体包括:
步骤301)利用pipework为Docker容器设置包含IP、MAC在内的物理配置;
步骤302)根据Docker容器ID,在cgroups固定路径下找到与其对应的ID一致的cgroups组,通过修改cgroups组对容器进程的限制,为Docker容器设置包含CPU使用率、内存占用率、最大磁盘空间在内的资源配置。
2.根据权利要求1所述的基于Docker的软件大规模测试方法,其特征在于,所述的步骤5)具体包括:
步骤501)利用Docker提供的容器控制命令管理容器的生命周期,根据对软件性能的需求和测试需要设置测试流程,停止或重启Docker容器,模拟现实环境中运行软件的宿主机终端节点上下线;
步骤502)链接Docker自生成的虚拟终端,利用shell命令查看软件动态上下线情况,并记录包含软件占用资源、启动时间和数据恢复在内的测试结果,作为评估软件性能的依据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院声学研究所;上海尚恩华科网络科技股份有限公司,未经中国科学院声学研究所;上海尚恩华科网络科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611088872.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:测试程序性能的方法及装置
- 下一篇:一种软件评估方法和装置