2. 测试套件安装与环境搭建

好,咱们直接进入正题。测试套件装不好,后面全是白搭。我见过不少团队,花了两周调环境,结果发现是License没配对。所以这一章,我带你一步步把地基打牢。

2.1 下载与安装:别下错版本

先说下载。UniPro的测试套件主要有两种:UniPro Protocol Analyzer(抓协议分析的)和UniPro Test Suite(跑一致性测试的)。我个人习惯是两套都装,因为调试时经常需要交叉验证。

  • UniPro Protocol Analyzer:用于实时抓取UniPro链路上的数据包,分析协议时序。
  • UniPro Test Suite:用于执行MIPI联盟定义的测试用例,验证DUT是否符合规范。

下载时注意版本号。我踩过坑:有一次项目急着用,下了个Beta版,结果连基本的PA层初始化都跑不过。后来才发现,正式版和Beta版的数据库结构不一样。所以,务必从MIPI官网或授权渠道获取正式发布版

警告: 不要从第三方论坛下载破解版或修改版。License验证会失败,而且可能植入恶意代码。我有个朋友就因此丢了整个项目数据。

2.2 License配置:最容易被忽视的环节

装好软件后,第一件事不是点“运行”,而是配License。说白了,License就是一把钥匙。没有它,软件只能当个摆设。

配置步骤大致如下:

  1. 获取License文件(通常是.lic或.dat格式)。
  2. 将文件放到指定目录,比如C:\Program Files\UniPro\license\(Windows)或/opt/UniPro/license/(Linux)。
  3. 设置环境变量UNIPRO_LICENSE_PATH指向该目录。
  4. 重启软件或服务。

嗯,这里要注意:有些套件需要浮动License,也就是通过网络从License服务器获取。这时候你得配好服务器地址和端口。我曾经在客户现场折腾了一下午,最后发现是防火墙把端口给封了。所以,配完记得用pingtelnet测一下网络连通性。

小技巧: 如果License报错“Invalid host”,八成是MAC地址或主机名对不上。用ipconfig /all(Windows)或ifconfig(Linux)核对一下。

2.3 依赖库安装:Python3、Tcl/Tk、Wireshark插件

测试套件不是孤立的,它需要一堆依赖库。你想想看,没有Python3,脚本跑不了;没有Tcl/Tk,GUI界面打不开;没有Wireshark插件,抓包数据根本看不懂。

2.3.1 Python3环境

我建议装Python 3.8以上版本。为什么?因为UniPro Test Suite的自动化脚本用到了asynciodataclasses,这些在3.7之后才稳定。

# 检查Python版本
python --version
# 如果低于3.8,去python.org下载安装

# 安装必要库
pip install pyyaml numpy matplotlib

记得把Python添加到系统PATH。我遇到过有人装完Python,但命令行里死活找不到python命令,就是因为没勾选“Add Python to PATH”。

2.3.2 Tcl/Tk环境

测试套件的图形界面依赖Tcl/Tk。Windows下通常自带,但Linux下需要手动装。

# Ubuntu/Debian
sudo apt-get install tcl tk

# CentOS/RHEL
sudo yum install tcl tk

装完后,运行wish命令,如果能弹出一个小窗口,就说明Tcl/Tk工作正常。

2.3.3 Wireshark插件

这个插件是用来解析UniPro协议包的。没有它,Wireshark抓到的只是一堆乱码。

  1. 下载UniPro的Wireshark插件(通常是.so或.dll文件)。
  2. 复制到Wireshark的插件目录,比如C:\Program Files\Wireshark\plugins\
  3. 重启Wireshark,在“协议”列表里应该能看到“UniPro”。
重点: 插件版本必须与Wireshark主版本匹配。Wireshark 3.6的插件不能用在4.0上。我吃过这个亏,当时抓了一整天包,解析出来全是错的。

2.4 环境验证:跑一个Hello World

所有东西装好后,别急着开始复杂测试。先跑一个最简单的用例,验证环境是否通。

# 启动UniPro Test Suite的命令行模式
unipro_test_suite --list-tests

# 如果能看到测试用例列表,说明安装成功
# 如果报错,检查依赖库是否完整

我个人习惯再跑一个Loopback测试。就是把DUT的TX和RX短接,发一个包看能不能收回来。这一步能快速验证硬件连接和软件配置是否正确。

避坑指南: 我曾经在Loopback测试时发现收不到包,折腾半天,结果是TX和RX接反了。所以,接线时一定仔细看文档。

2.5 知识体系总览

下面这张图,是我自己总结的安装与验证流程。你照着走,基本不会出大问题。

测试套件安装与环境搭建流程 1. 下载安装包 正式版,核对版本号 2. License配置 环境变量 + 网络检查 3. 依赖库安装 Python3 + Tcl/Tk + 插件 4. 环境验证 Loopback测试 失败?回退 5. 环境就绪 可以开始测试 每个步骤都可能出现意外,保持耐心,逐项排查

这张图里,我特意把“失败回退”的路径画出来了。为什么?因为实际项目中,很少有一次成功的。你可能会在License上卡住,也可能在依赖库版本上翻车。没关系,按图索骥,一步步排查就好。

2.6 常见问题速查

问题现象 可能原因 解决办法
软件启动后闪退 缺少Tcl/Tk库 重新安装Tcl/Tk,并检查PATH
License报错“Invalid host” MAC地址或主机名不匹配 核对License文件中的host信息
Wireshark无法解析UniPro包 插件版本不匹配 下载对应Wireshark版本的插件
Python脚本报ModuleNotFoundError 缺少依赖库 用pip install安装缺失模块

好了,环境搭好之后,下一章我们就可以真正开始跑测试用例了。不过在那之前,我建议你把刚才装的每个组件都手动点一遍,确认都能正常工作。磨刀不误砍柴工嘛。


专注资料整理