Spirent TestCenter 自动化中文版教程(十一)门道初探之Python快速部署

文摘   科技   2024-05-10 10:49   北京  
Spirent TestCenter提供多种自动化接口,例如TCL、Python、Java、C#和Perl等。其中,Python最易上手,也是很多小伙伴经常咨询和提问的。
今天我们将重点介绍如何使用Python创建基于Spirent TestCenter的自动化测试环境。


往期文章:

Spirent TestCenter 自动化使用指南


本期文章的主要内容有:
已部署Python环境的同学可跳过Python环境安装,直接从第三步开始

1. Windows下Spirent TestCenter Python自动化环境搭建

    • Spirent TestCenter客户端安装

    • Python环境安装

    • 创建测试Demo并运行

2. Linux下Spirent TestCenter Python自动化环境搭建

    • Spirent TestCenter客户端安装

    • Python环境安装

    • 创建测试Demo并运行


环境准备:

    1. Spirent TestCenter客户端安装包

    2. Python运行环境

    3. 脚本编辑工具


一、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

1. 打开Spirent TestCenter Application软件,连接到机框。
2. 在菜单栏中选择Tools,然后点击 Licensing Management。
3. 找到“PYTHON API FOR WINDOWS”说明STC已经具备Python自动化的功能。如果没有找到,说明STC机框暂时还不支持Python自动化,可以联系Spirent销售人员解决。


确认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 osfrom 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 wgetwget 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 osfrom 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自动化的开发,敬请期待!


Reference:
Spirent_TestCenter_Automation_Prog_Guide.pdf
Spirent_TestCenter_Automation_Overview_Manual.pdf
Spirent_TestCenter_Automation_Obj_Ref.pdf

关键词:Spirent TesterCenter,python,windows,linux,deploy,automation,script,code,environment variable, pycharm


 END




往期文章:

(一)书山有路之Hello World!

(二)门道初探之port基础

(三) 门道初探之port技巧

(四)门道初探之调试技巧

(五)门道初探之streamBlock基础

(六)门道初探之Device和绑定流

(七)门道初探之Generator基础

(八)门道初探之基础实践

(九)门道初探之Result基础

(十)门道初探之Capture基础




联系我们:

思博伦官方网站: www.spirent.cn

技术中心热线:400-810-9529

支持邮箱:support@spirent.com

售后网站:support.spirent.com


版权归思博伦通信科技(北京)有限公司所有,思博伦技术中心(SpirentServices)原创发布,转载请联系授权。


长按识别二维码,关注思博伦技术中心


思博伦技术中心
思博伦技术中心由思博伦全球服务部的技术团队管理和维护。我们致力于提供完善的技术支持,并定期更新。通过我们的微信平台您将获取最新的产品发布信息,全面的产品使用技巧,实用的常见问题解决方案,以及完善的售后服务流程。
 最新文章