Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

KnightBlood/PyJMeterParser

Repository files navigation

PyJMeter

📌 项目简介

基于Python实现的JMeter扩展工具,提供多框架UI支持(Tkinter/NiceGUI/PySide6/Flet),支持JMX文件解析与可视化操作

📄 功能特性

  • ✅ 多UI框架支持:tk/nicegui/flet/pyside6/wx
  • ✅ JMX文件解析与可视化编辑
  • ✅ 自定义参数配置系统
  • ✅ 跨平台运行支持(Windows/macOS/Linux)
  • ✅ PyWebView集成(NiceGUI专属)

📁 目录结构

├── business/ # 核心业务逻辑(JMX解析引擎)
├── package/ # 第三方依赖包管理
├── ui/ # 多框架UI实现
│ ├── main_window.py # Tkinter基础实现
│ ├── nicegui_main_window.py # NiceGUI专用实现
│ ├── flet_main_window.py # Flet专用实现
│ ├── wx_main_window.py # wxPython专用实现
│ └── pyside6_main_window.py # PySide6专用实现
├── utils/ # 工具类
├── app.py # 主程序入口
├── requirements.txt # 核心依赖列表
└── README.md # 项目文档

🛠️ 安装指南

# 安装核心依赖
pip install -r requirements.txt

🚀 快速启动

# 默认启动(弹出UI选择窗口)
python app.py
# 指定UI框架启动
python app.py --ui tk # 启动Tkinter版本
python app.py --ui nicegui # 启动NiceGUI版本
python app.py --ui pyside6 # 启动PySide6版本
python app.py --ui flet # 启动Flet版本
python app.py --ui wx # 启动wxPython版本

⚙️ 特性配置

NiceGUI专用配置

  • 窗口大小:通过JavaScript动态控制(800x600)
  • 服务器端口:8080(可修改)
  • 热重载:已禁用(生产环境优化)

📌 注意事项

  1. Python版本要求:需要Python 3.12+
  2. 信号处理异常:请始终在主进程中启动应用
  3. 窗口大小控制:修改ui/nicegui_main_window.py中的JavaScript脚本
  4. 跨平台兼容性:Windows/Mac/Linux通用,推荐使用虚拟环境

🤝 贡献指南

  1. Fork仓库并创建开发分支
  2. 提交PR时请包含完整测试
  3. 遵循PEP8代码规范
  4. 添加类型提示(Type Hints)

🛠️ 开发环境

# 推荐使用虚拟环境
python -m venv .venv
source .venv/bin/activate # Windows使用 .venv\Scripts\activate
# 安装所有开发依赖
pip install -r requirements.txt -r dev-requirements.txt

🐞 问题排查

常见问题

  • 信号处理错误:确保通过if __name__ == "__main__"保护启动代码
  • 依赖缺失:使用pip install <package> --no-cache-dir强制重新安装
  • 窗口显示异常:检查防火墙设置是否阻止本地端口通信

📜 开源协议

MIT License

About

基于Python实现的JMeter脚本格式化工具

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /