很多朋友在开源社区中询问在 MeterSphere 开源持续测试平台的前后置脚本中引用 Python 第三方库的具体方法,本文就来快速、简洁地为大家分享实现这一操作的具体步骤。
方案
Virtualenv 是一个创建隔绝的 Python 环境的工具。Virtualenv 创建一个包含所有必要的可执行文件的文件夹,用来使用 Python 工程所需的包。通过在 MeterSphere 持续测试平台所在宿主机上创建 Virtualenv 环境,安装第三方库,挂载进 JMeter 容器中,就可以实现在 MeterSphere 平台执行 Python 脚本时引入第三方库的操作。
实现步骤
MeterSphere 所在宿主机已安装 Python 和 Virtualenv 工具。
注意:在同时安装了 Python2 和 Python3 的环境下,使用 virtualenv --copies . 创建的虚拟环境会是 Python3 的,目前 MeterSphere 只支持 Python2,所以这里尽量使用 python2 -m virtualenv 环境名来创建。
安装 Virtualenv:
pip install virtualenv
① 进入 MeterSphere 所在节点,安装所需的第三方包。
安装第三方包:
#创建virtualenv
#data目录为docker默认挂载路径,可将第三方包安装该目录下,若Metersphere实际安装路径为其他路径,则下面操作放在MS实际安装路径下
cd /opt/metersphere/data/
mkdir python
cd python/
virtualenv --copies .
source bin/activate
#安装第三方包,比如xpinyin
pip install xpinyin==0.5.7 -i https://pypi.tuna.tsinghua.edu.cn/simple
#查看是否安装成功,是否有生成相应目录
ll lib/python2.7/site-packages/
② 前台编写 Python 前后置脚本,并进行验证。
脚本示例:
import sys
#注意:此路径容器内部的映射路径,为固定值
sys.path.append("/opt/metersphere/data/python/lib/python2.7/site-packages")
from xpinyin import Pinyin
log.info("==========debug==========")
③ 验证测试