一、工具背景
背景:容灾自动化测试工具开箱即用能力优化;
需求:自动生成容灾测试用例;
实现目标:
- 在k8s的集群模式下,通过自定义的配置文件信息(核心业务pod名称)获取所有要搜索的业务pod、业务节点、管理节点、业务进程。
- 获取到业务pod、业务节点、管理节点、业务进程的配置数据。
- 根据容灾工具配置的18种容灾测试模型自动生成所有核心业务pod、业务节点、管理节点、业务进程的yaml容灾用例。
二、设计思路
三、代码实现
1. 执行文件
代码语言:javascript复制get_describe_Info.py / print_describe_info.py
获取业务pod、业务节点、管理节点、业务进程的配置信息。
main.py
生成业务pod、业务节点、管理节点、业务进程的 yaml 容灾用例。
delete_Yaml_file.py
格式化 Yaml Package。
2. 依赖文件
代码语言:javascript复制print_model.py
调用 Model Package 中的代码。
podname-processname.txt
开发提供的文档,内容包括:podname(节点名),processname(进程名),grade(等级)。
pod_describe.ini / node_descirbe.ini
获取的业务pod、业务节点、管理节点的配置信息。
3. 依赖文件夹
代码语言:javascript复制Model Package
根据容灾模型生成 yaml 容灾用例的代码。
Model_Yaml Package
各个容灾模型对应的 yaml 格式。
Yaml Package
存储生成的 yaml 容灾用例。
四、使用方法
1. 安装
代码语言:javascript复制#在Linux环境下,要有Kubernetes(k8s)环境
自行安装k8s
#使用命令导入工具的zip包
rz
#解压zip包
unzip 包名
2. 使用
代码语言:javascript复制#1.进入到容灾自动化测试工具的目录下
cd pythonProject/容灾自动化测试工具/
#2.执行获取配置信息的操作,执行成功后会有.ini文件生成
python print_describe_info.py
#3.执行main.py生成yaml容灾用例
python main.py
#4.格式化Yaml Package
python delete_Yaml_file.py
五、注意事项
1. podname-processname.txt 格式
- 按行输入
- 内容为podname(pod名),processname(进程名),grade(等级)
- 各字段间用逗号划分
2. 注意执行顺序
代码语言:javascript复制#1.首先获取配置文件信息
python print_describe_info.py
#2.获取配置信息后才能执行
python main.py
#3.更新数据之前,格式化Yaml Package
python delete_file.py