opnfv/functest-smokeOPNFV Functest Smoke 镜像是基于 OPNFV Functest 测试框架构建的轻量级 Docker 镜像,旨在为 NFV(网络功能虚拟化)基础设施提供快速、自动化的基础功能验证能力。该镜像封装了 Functest 测试套件中的 "smoke" 测试用例集,专注于验证 NFV 环境的核心组件(如计算、网络、存储资源及基础 VNF 部署能力)是否正常工作,可作为 NFV 环境部署、升级或配置变更后的首道功能验证工具。
通过 Docker Hub 或 OPNFV 官方镜像仓库拉取镜像:
bashdocker pull opnfv/functest-smoke:latest # 最新版本 # 或指定版本(如针对 OPNFV Gambia 版本) docker pull opnfv/functest-smoke:gambia.1.0
bashdocker run -it --rm \ -e TARGET_IP=192.168.1.100 \ # 目标 NFV 环境控制节点 IP -e AUTH_URL=[***] \ # OpenStack Keystone 认证 URL -e USERNAME=admin \ # 目标环境管理员用户名 -e PASSWORD=opnfv_password \ # 管理员密码 -e PROJECT_NAME=admin \ # 项目名称 -v /local/report:/opt/functest/report \ # 挂载本地目录存储测试报告 opnfv/functest-smoke:latest
通过 TEST_CASES 环境变量指定需执行的测试用例(默认执行全部 smoke 用例):
bashdocker run -it --rm \ -e TARGET_IP=192.168.1.100 \ -e AUTH_URL=[***] \ -e USERNAME=admin \ -e PASSWORD=opnfv_password \ -e TEST_CASES="compute-basic,network-ping,vnf-router" \ # 仅执行计算基础、网络连通、VNF 路由器测试 -v /local/report:/opt/functest/report \ opnfv/functest-smoke:latest
创建 docker-compose.yml 文件,定义测试服务:
yamlversion: '3' services: functest-smoke: image: opnfv/functest-smoke:latest environment: - TARGET_IP=192.168.1.100 - AUTH_URL=[***] - USERNAME=admin - PASSWORD=opnfv_password - PROJECT_NAME=admin - DOMAIN_NAME=default # Keystone 域名称(默认 default) - REPORT_FORMAT=json # 报告格式:json/xml/html(默认 json) - LOG_LEVEL=INFO # 日志级别:DEBUG/INFO/WARNING/ERROR(默认 INFO) volumes: - ./report:/opt/functest/report # 本地报告目录挂载 network_mode: "host" # 如需直接访问宿主机网络(如目标环境在本地)
启动服务:
bashdocker-compose up
| 环境变量名 | 描述 | 示例值 | 是否必填 |
|---|---|---|---|
| TARGET_IP | 目标 NFV 环境控制节点 IP 地址(用于网络连通性检测) | 192.168.1.100 | 是 |
| AUTH_URL | OpenStack Keystone 认证 URL | [***] | 是 |
| USERNAME | 目标环境管理员用户名 | admin | 是 |
| PASSWORD | 管理员用户密码 | opnfv_password | 是 |
| PROJECT_NAME | 测试执行所在的 OpenStack 项目名称 | admin | 是 |
| DOMAIN_NAME | Keystone 认证域名称 | default | 否 |
| TEST_CASES | 指定执行的测试用例(逗号分隔,默认执行全部 smoke 用例) | compute-basic,network-ping | 否 |
| REPORT_FORMAT | 测试报告格式(json/xml/html) | json | 否 |
| REPORT_PATH | 容器内报告存储路径(默认 /opt/functest/report) | /opt/functest/custom_report | 否 |
| LOG_LEVEL | 日志输出级别(DEBUG/INFO/WARNING/ERROR) | INFO | 否 |
| TIMEOUT | 单测试用例超时时间(秒,默认 300) | 600 | 否 |
测试执行完成后,报告默认存储于容器内 ${REPORT_PATH} 目录(需通过 -v 挂载至本地目录以持久化)。报告文件命名格式为 functest-smoke-<timestamp>.<format>(如 functest-smoke-202405201530.json),包含测试用例名称、状态(PASS/FAIL)、耗时、详细日志等信息。
TEST_CASES),避免影响业务流量。gambia.x 版本镜像)。

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务