返回顶部
s

server-test-converter服务测试转换器

将服务器测试命令 txt 文件转换为 pytest 测试用例。每个 txt 文件对应生成一个独立的 pytest 文件,命令合并到一个函数中执行。包含通用框架 test_framework.py,适配各种测试环境。

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.1
安全检测
已通过
177
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

server-test-converter

服务器测试用例转换器

将服务器/网卡测试命令文件转换为 pytest 测试用例。每个 txt 文件生成一个对应的 pytest 文件

功能概述

  • - 输入: 包含测试命令的 txt 文件(支持批量处理)
  • 输出: 每个 txt 文件对应一个 pytest 测试文件
  • 执行方式: 支持 sendr5 (R5卡) 和 sendhost (主机Shell) 两种方式
  • 通用框架: 提供 test_framework.py,可适配各种测试环境

使用方法

1. 准备输入文件

将待转换的 txt 命令文件放到目录:

/home/admin/.openclaw/tytest/txt_contents/txt/*.txt

2. 运行转换脚本

bash
python3 /home/admin/.openclaw/workspace/skills/server-test-converter/convert_commands.py

3. 获取输出

转换后的文件:

/home/admin/.openclaw/tytest/
├── test_framework.py # 通用框架(需要配置)
├── test_xxx.py # 生成的测试用例
└── txt_contents/ # 原始命令文件

通用框架说明

test_framework.py

生成的测试代码依赖 test_framework.py,使用方式:

python
from testframework import sendr5, sendhost, sendr5wait, sendhostwait, tllog, TARGET, TARGET_R5

配置步骤

  1. 1. 复制到测试服务器: 将 testframework.py 和 testxxx.py 复制到测试服务器
  1. 2. 实现 sendacmd(): 根据你的测试环境实现命令执行逻辑

python

方式一: SSH


import paramiko
def sendacmd(cmd, target):
ssh = paramiko.SSHClient()
ssh.connect(hostname=192.168.1.100, username=admin, password=xxx)
stdin, stdout, stderr = ssh.exec_command(cmd)
return stdout.read()

方式二: 调用已有框架

from yourframework import executecmd def sendacmd(cmd, target): return execute_cmd(cmd, target)

方式三: 本地执行

import subprocess def sendacmd(cmd, target): result = subprocess.run(cmd, shell=True, capture_output=True) return result.stdout
  1. 3. 配置目标设备: 修改 TARGET 和 TARGET_R5 的值
  1. 4. 运行测试:
bash pip install pytest pytest test_xxx.py -v

命令执行方式判断

命令类型示例执行方式
内存操作md, mwsendr5wait
调度器
txschtest, dmiftxsch | sendr5wait | | DFX诊断 | dmifeoc, showdfx | sendr5wait | | 网卡命令 | ice, test, nicif* | sendr5_wait | | 其他 | Shell 命令等 | sendhostwait |

输出格式

python
#!/usr/bin/env python3

自动生成的测试用例: xxx.txt

import pytest
import sys
import os

sys.path.insert(0, os.path.dirname(os.path.abspath(file)))
from testframework import sendr5, sendhost, sendr5wait, sendhostwait, tllog, TARGET, TARGET_R5

class TestXxx:
def testallcommands(self, env):
执行所有命令
commands = [命令1, 命令2]
for cmd in commands:
sendr5wait(TARGET_R5, cmd)

注意事项

  1. 1. 通用框架: 不依赖特定测试框架,适配各种环境
  2. 需要实现: 用户需要实现 sendacmd() 函数
  3. 配置目标: 根据实际修改 TARGET 和 TARGET_R5
  4. 自动去重: 相同的命令只保留一条

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 server-test-converter-1776201662 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 server-test-converter-1776201662 技能

通过命令行安装

skillhub install server-test-converter-1776201662

下载

⬇ 下载 server-test-converter v1.0.1(免费)

文件大小: 4.64 KB | 发布时间: 2026-4-17 16:04

v1.0.1 最新 2026-4-17 16:04
- 新增通用测试框架 test_framework.py,支持自定义命令执行逻辑,适配多种测试环境
- 生成的 pytest 文件现在依赖 test_framework.py,简化了环境集成和命令适配
- SKILL.md 文档优化,详细说明框架用法、配置步骤和 send_a_cmd() 实现方法
- 保持每个 txt 文件生成一个独立的 pytest 文件机制,并支持自动命令去重

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部