1. Windows下Spirent TestCenter Python自动化环境搭建
Spirent TestCenter客户端安装
Python环境安装
创建测试Demo并运行
2. Linux下Spirent TestCenter Python自动化环境搭建
Spirent TestCenter客户端安装
Python环境安装
创建测试Demo并运行
一、Windows下Spirent TestCenter Python自动化环境搭建
1. Spirent TestCenter客户端安装
我们以Spirent TestCenter 5.45 x64客户端为例,双击Spirent TestCenter客户端安装程序,根据界面提示安装,中间有一步需要设置Postgres的密码,默认密码为“postgres”需要手动输入。然后一路“Next”直至看到“Finish”按钮,点击“Finish”完成退出安装程序。
STC的Python自动化需要License支持,安装完客户端后,请确保STC机框License中包含“PYTHON API FOR WINDOWS”。
确认License后我们进入到Spirent TestCenter安装目录下的\Spirent TestCenter Application\API\Python目录,可以看到名为“StcPython.py”的Python文件,这是Spirent TestCenter Python自动化的API接口文件,这个文件非常重要,Python自动化中所有与Spirent TestCenter仪表的交互都需要通过它来完成!
在5.45的自动化接口文件(StcPython.py)中描述了可支持的Python版本(见下图),最高支持到Python3.11,最低支持到Python2.7,如果您的系统中已经有了接口文件中所对应的Python环境,那么您可以选择跳过Python环境的安装部分,直接创建测试Demo。建议大家尽量使用高版本的Python以获得更好的体验。
需要注意,Spirent TestCenter从3.8版本开始支持Python。早期的客户端对Python的支持有限,只支持Python2的有限版本,具体大家可以通过接口文件中的Python版本号来判断,例如这个Spirent TestCenter 4.0版本中的接口文件:
这个时候3.0版本的Python还没有正式支持,只建议使用2.6.5以上且3.0以下的版本,因此对于老版本的Spirent TestCenter用户要注意,在开始自动化之前一定要先确认自己的客户端所支持的Python版本,以免带来不必要的麻烦。
请注意,Spirent TestCenter 从5.04开始支持Python 3.6,5.22开始支持Python 3.9,5.42开始支持3.10.10和3.11.2。
2. Python环境安装
已部署Python环境的同学可跳过此步骤,直接从第三步开始。
如果STC客户端安装的是64位,Python也要选择64位,反之亦然。
下载Python3.9.2安装包
https://www.python.org/ftp/python/3.9.2/python-3.9.2.exe
双击exe安装Python,勾选添加到环境变量的复选框,保持默认设置,点击下一步直至安装完成。
安装完成后,进入命令行输入Python -V 显示Python版本号,说明Python安装成功
3. 创建测试Demo
在本地创建一个“STC_Demo”的测试文件夹
复制Spirent TestCenter客户端目录/API/Python下的“StcPython.py”(API接口文件)到我们刚刚创建的项目目录下
打开Pycharm,加载测试项目,项目加载完成后,Pycharm会自动在项目目录下创建一个名为“main.py”的python文件,我们的demo脚本可以写在这里,也可以在同目录下重新自定义一个新文件。本次演示中,我们将直接写在“main.py”!
或在STC_Demo测试文件夹下直接创建“main.py”,使用文本编辑器打开编辑即可。
Pycharm Community下载地址:https://www.jetbrains.com.cn/pycharm/download/#section=windows
选择Python解释器,在Pycharm中选择“文件--设置—项目—Python解释器”选择Python解释器,选用我们刚刚安装的3.9.2版本。如果无法直接选择解释器,请先添加解释器,在添加解释器界面中选择Python安装目录即可。
最后清空“main.py”中自动生成的代码,然后copy以下代码,测试API调用是否正常。
import os
from StcPython import StcPython
if __name__ == '__main__':
# STC安装目录(根据实际情况修改)
STC_PRIVATE_INSTALL_DIR = "C:\\Program Files\\Spirent Communications\\Spirent TestCenter 5.45\\Spirent TestCenter Application"
# 添加到环境变量
os.environ['STC_PRIVATE_INSTALL_DIR'] = STC_PRIVATE_INSTALL_DIR
# 实例化STC对象
stc = StcPython()
# 获取STC版本
print(f"STC version: {stc.get('system1', 'version')}")
输出结果:
至此,Windows下Spirent TestCenter自动化测试环境搭建部分全部完成。
不使用Pycharm的同学,可使用自选编辑器创建main.py,在前面第二步部署成功Python,直接在命令行窗口中运行 python main.py,也可以得到同样的结果。
二、Linux下Spirent TestCenter Python自动化环境搭建
1. Spirent TestCenter客户端安装
可参考文章:Spirent TestCenter - Linux下搭建TestCenter环境
Linux下的Spirent TestCenter客户端是一个打包好的二进制可执行文件,我们通过SSH或FTP工具上传,上传完成后,文件无法直接运行,需要赋予执行权限,否则会提示权限错误。使用“chmod +x”命令赋予客户端执行权限。
接着使用“./ install_Spirent_TestCenter_Auto_Linux64_5.45.sh”命令即可安装Spirent TestCenter客户端。
在安装的过程中,安装程序和用户会有个命令行的交互,需要用户根据实际情况填入Spirent TestCenter的安装目录,IQ Result的连接方式等信息。需要注意的是,在配置数据库密码时,不会回显任何字符,请尽量保证一次输入正确。当完成所有交互后,程序开始自动安装,整个过程大概持续几分钟,请耐心等待,安装完成后会看到安装成功的提示。
至此,Spirent TestCenter Linux的客户端安装完成
2. Python环境安装
在 /usr/local/python3.9 (自己创建)目录下,用 wget 指令在 Python 官网下载3.9.2版本的源码
Linux下源码安装Python相关命令:
# 创建目录
mkdir /usr/local/python3.9
# 进入目录
cd /usr/local/python3.9
# 下载Python源代码
# 如果wget报错,提示找不到wget命令,需要先安装wget工具
# Centos下执行:yum install -y wget
# Ubuntu/Debain下执行:apt install -y wget
wget https://www.python.org/ftp/python/3.9.2/Python-3.9.2.tgz
# 解压文件
tar -zxvf Python-3.9.2.tgz
# 配置安装参数
./configure --enable-shared --enable-optimizations
# 编译安装
# 此过程会持续一段时间,请耐心等待
make && make install
# 创建软连接
ln -s /usr/local/bin/python3.9 /usr/bin/python3
# 使用“python3 -V”命令验证python版本
# 显示python版本号“Python 3.9.2”说明安装成功
python3 -V
3. 创建测试Demo
使用SSH或者FTP工具上传我们在windows环境下创建的测试Demo文件夹,或直接在Linux环境中创建Demo文件夹和“main.py”文件。
修改“main.py”文件中的Spirent TestCenter安装目录。这里需要将windows的安装目录修改为Linux下的安装目录,其他代码保持不变。
import os
from StcPython import StcPython
if __name__ == '__main__':
# STC安装目录(根据实际情况修改)
STC_PRIVATE_INSTALL_DIR = "/usr/local/STC/Spirent_TestCenter_5.45/Spirent_TestCenter_Application_Linux"
# 添加到环境变量
os.environ['STC_PRIVATE_INSTALL_DIR'] = STC_PRIVATE_INSTALL_DIR
# 实例化STC对象
stc = StcPython()
# 获取STC版本
print(f"STC version: {stc.get('system1', 'version')}")
修改完成后保存退出, 并执行测试脚本:
显示版本号说明API接口调用成功。
至此,Linux下Spirent TestCenter自动化测试环境搭建部分全部完成。
总结:
从以上演示可以看到,Spirent TestCenter的自动化是跨平台的,我们在Windows下编写自动化脚本,调试成功后,迁移到Linux平台下直接运行。代码几乎不需要做任何修改。
实际应用中可以考虑添加一个配置文件,配置文件中填写Spirent TestCenter的版本号、安装路径和对应的操作系统,这样执行自动化脚本的时候,可以实现根据当前的配置文件匹配对应路径,完成测试。
后续我们将会基于本篇文章的内容继续给大家介绍如何使用Python进行Spirent TestCenter自动化的开发,敬请期待!
END
往期文章:
联系我们:
思博伦官方网站: www.spirent.cn
技术中心热线:400-810-9529
支持邮箱:support@spirent.com
售后网站:support.spirent.com
版权归思博伦通信科技(北京)有限公司所有,思博伦技术中心(SpirentServices)原创发布,转载请联系授权。
长按识别二维码,关注思博伦技术中心