引言 :
您是否也面临这些痛点?
- 同样的测试脚本在类似的场景不能重复利用,为维护大量脚本而头疼;
- 换台设备就得重新配置适配脚本;
- 脚本代码逻辑复杂,代码行数太多,易读性较差。
本篇文章主要介绍如何使用Renix高层封装API编写自动化脚本的基础知识和技巧。只要您熟悉测试流程,不需要很强的代码能力就可以顺利编写自动化测试。
本教程将以实践为导向,引导您逐步掌握Renix高层封装API Python编码的基础知识,教您如何创建测试拓扑、生成流量、执行测试并收集结果。其中涉及大量源码,满满干货,看完记得点赞哦!
Renix高层封装自动化脚本框架
1. 框架设计理念
核心原则:
✅ 测试逻辑与设备配置分离
✅ 用例参数与执行脚本解耦
✅ 多厂商设备即插即用
目录结构详解
2.1 测试用例集 (switch/)
文件规范:
用例ID遵循 用例编号命名
cfg.json 包含流量参数/断言阈值等可变数据
2.2 设备命令集 (command/)
多厂商设备命令集支持:
厂商设备命令集目录
2.3 核心库 (libraries/)
2.4. 全局配置 (testbed.json)
3、脚本逻辑执行流程
Renix高层封装四大自动化秘籍
秘籍一:1行代码唤醒历史配置
适用场景:
▸ 回归测试快速复现问题
▸ 新员工秒接手自动测试
按照我们提供的脚本目录框架将手动保存的配置的仪表文件放在文件夹目录下,使用信而泰TesterLibrary 高层封装API load_case,只需输入load_case(Path=xcfg_path)即可自动加载文件目录下的xcfg文件
秘籍二:一个脚本可通用于相似用例
让相似的用例复用一个自动化脚本。
核心思想:
"三分离原则"
- 测试逻辑(固定),脚本逻辑对应测试步骤,测试逻辑相同只是仪表配置不用的用例脚本可以实现复用
- 测试数据(可变),测试参数和数据统一存放在一个json文件中,修改数据即可进行数据的充分测试
- 设备控制(可替换),交换机路由器命令支持 ssh,telnet,console,tcp等远程通信连接方式自动下发,命令格式支持txt,excel两种类型
交换机测试命令集目录及命令内容实例如下图:
秘籍三:智能适配多环境
如何让一个脚本,适配多套测试环境和设备,
- 测试拓扑的适配
测试拓扑连接信息写入testbed.json文件中,修改对应的测试仪表,交换机设备的 ip 和实际端口即可适配不同的测试环境。
- 测试仪表速率和产品类型的适配
测试仪表产品类型分为BigTao和DarYu,不同端口速率的适配,在testbed.json文件中修改"edit_port_params"可以对测试仪的端口参数进行设置,如下图示为端口设置关闭FEC。
秘籍四:像读说明书一样读代码
让自动化脚本代码清晰可读,一行代码就是一个步骤,让自动化脚本易上手